web-dev-qa-db-ja.com

.NET-データセットから特定のアイテムを取得する方法

データベースに接続し、データをデータセットに保存する次のコードがあります。

ここで必要なのは、データセットから単一の値を取得することです(実際には、その2つの最初の行の列4と5)。

OdbcConnection conn = new OdbcConnection();
    conn.ConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString2"].ConnectionString;

    DataSet ds = new DataSet();

    OdbcDataAdapter da = new OdbcDataAdapter("SELECT * FROM MTD_FIGURE_VIEW1", conn);

    da.Fill(ds)

したがって、2つの特定のアイテムを取得してintに保存する必要があります。psudoコードは

int var1 = ds.row1.column4
int var2 = ds.row1.column5

私はこれをどのように行うことができますか?

また、誰かがデータテーブルに光を当てることができますか?.

11
c11ada

次のようにできます...

ColumnNameを使用してアクセスする場合

Int32 First = Convert.ToInt32(ds.Tables[0].Rows[0]["column4Name"].ToString());
Int32 Second = Convert.ToInt32(ds.Tables[0].Rows[0]["column5Name"].ToString());

または、Indexを使用してアクセスする場合

Int32 First = Convert.ToInt32(ds.Tables[0].Rows[0][4].ToString());
Int32 Second = Convert.ToInt32(ds.Tables[0].Rows[0][5].ToString());
28
Muhammad Akhtar

私はこのようなものを使用することを好みます:

int? var1 = ds.Tables[0].Rows[0].Field<int?>("ColumnName");

または

int? var1 = ds.Tables[0].Rows[0].Field<int?>(3);   //column index
2
Chris Dunaway
int intVar = (int)ds.Tables[0].Rows[0][n];   // n = column index
int var1 = int.Parse(ds.Tables[0].Rows[0][3].ToString());
int var2 = int.Parse(ds.Tables[0].Rows[0][4].ToString());
0
Senad Meškin