[英]How to use LINQ to return the result as Dictionary<string,string> in C#
我是LINQ的新手。 我想查詢文件夾中的文件並以Dictionary的形式返回結果。這是我的代碼
var queryResult = (from d in directoryInfo.GetFiles()
where d.Name.EndsWith(suffix)
select new Dictionary<string, string>
{
{d.Name,""},
});
但這似乎是不正確的。
GetFiles()返回FileInfo的數組。
從您的問題尚不清楚,您希望擁有什么作為Dictionary鍵,以及想要擁有什么作為值。 如果您想同時使用名稱,則可以
var queryResult =
(from d in directoryInfo.GetFiles()
where d.Name.EndsWith(suffix)
select d).ToDictionary(d=>d.Name, d=>d.Name);
那是一個毫無意義的字典,因為鍵和值是相同的。
如果確實要為每個文件保留FileInfo,則可以執行此操作(為您提供Dictionary<string, FileInfo>
):
var queryResult =
(from d in directoryInfo.GetFiles()
where d.Name.EndsWith(suffix)
select d).ToDictionary(k=>k.Name, v=>v);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.