簡體   English   中英

如何根據條件從臨時數據表(.net)中獲取列值

[英]How to get a column value from a temporary Datatable (.net) based on a condtion

ID  name   folderpath        files 

1    S1    D:\Official\1     1.jpg;2.jpg
2    S2    D:\Official\2    3.jpg;4.jpg

這是我的臨時數據表。 從這我想通過輸入作為文件夾路徑(Eg:D:\\ Official \\ 1)獲得文件(例如:1.jpg; 2.jpg)。

請幫助..關於吉斯泰什

如果您知道要獲取的列的索引,則可以執行以下操作:

dt.Rows[rowIndex][columnName];

否則,由於DataTable是datarow元素的集合,因此您可以使用如下的foreach循環對其進行迭代:

string files = String.Empty;
foreach (DataRow row in dt.Rows)
{
    if(row["folderpath"].ToString() == "YourValue")
    {  
         files= row["files"].ToString();
         break;
    }
}

編輯:

如果dataTable可能包含重復的行,則可以使用LINQ來查詢表,如下所示:

var allfiles = dt.AsEnumerable().Where(x => x.Field<string>("folderPath") == searchVal)
                                .Select(x => x.Field<string>("files"));

使用DataTable.Select()方法:

DataRow[] foundRows = myDataTable.Select("[folderpath] = 'D:\Official\1'");
for(int i = 0; i < foundRows.Length; i++)
{
    Console.WriteLine(foundRows[i]["files"]);
    // Or do something else with it
}

嘗試這個

var filteredData = dt.Select("folderpath like '%Official\1%'");

如果找到數據,這將返回數據行數組。

暫無
暫無

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

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