簡體   English   中英

在C#Datatable中檢索特定數據行

[英]Retrieve specific datarow in C# Datatable

我在C#中有一個名為“table”的數據表,如下所示:

 ID   Value
 10    A
 20    B
 30    C

(它確實有大約1200行,但我試圖簡化它)我的目標是能夠在這個數據表中打印特定的行。 例如,如果我想打印第二行(行索引1),我將使用以下內容:

Response.Write(table.Rows[1]["Value"].ToString());

這打印出我想要的值“B”,但有沒有辦法使用“ID”列打印該特定值而不是使用行索引1.我希望能夠鏈接ID 10以某種方式和價值B在一起。

如果ID被定義為主鍵 ,則應通過其ID鍵查找B

Response.Write(table.Rows.Find(20).["Value"].ToString());

你可以使用for each循環使用數據表,當ID等於10時,你就可以做你想做的事

會是這樣的:

for each row as datarow in datatable.rows
   if row.Items["ID"] = 10 Then
    //do something
   end if

如果ID未設置為PK(或者您要查詢其他字段),則可以使用Linq查詢

var chosenRow = (from row in table.AsEnumerable()
                    where row.Field<int>("ID") == 10
                    select row).First();

chosenRow是第一個滿足where子句中設置的條件的DataRow對象。 所以你可以:

Response.Write(chosenRow["Value"].ToString());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM