我知道LINQ,但我的知識幾乎只有選擇,where,orderby和所有最常用的功能。現在我需要做一些我認爲非常困難的事情,並且可能甚至不可能只使用LINQ。我擁有的是一個人的名單。東部 查詢,但我需要從該列表中創建一個文本字符串。文本字符串必須給出一個字母,後面跟着每個人的名字。複雜的LINQ查詢
IList<person> Person
我需要能夠通過檢查Person列表的LINQ語句。我需要 才能查找出現多次的名稱。到目前爲止,我有以下幾點。它的工作原理好,但是沒有得到所需要的一切:
Person[0] name="Fred" &
Person[1] name="Pete" &
Person[2] name="Tony" the var abc = "a) Fred. b) Pete. c) Tony
var a = "";
foreach (var person in _persons
.Select((data, value) => new { Data = data, Value = value })
{
a = a + (char)(details.Value + 64) + details.name
}
我需要的是額外的功能,以便:
Person[0] name="John" then var abc = "a) John."
Person[1] name="John" &
Person[3] name="John" then var abc = "b) & d) John."
Person[1] name="John" &
Person[2] name="John" &
Person[3] name="John" then var abc = "b),c) & d) John."
換句話說,得到的名字和之前他們表演把人物該名稱在列表中的位置。但是,如果名稱出現兩次,而不是a)name1。 b)姓名1我需要得到a),b)姓名。
這是我無法弄清楚如何去做的事情。我會很感激任何人都可以給我的建議或指示。
那必須是我讀過的最不着邊際的解釋。 「什麼?」是唯一想到的。 – Blindy
詞典將在這裏成爲你的朋友。將Person的名字作爲一個鍵,如果鍵存在,將下一個字母添加到像這樣的值'dict [key] + =「,」+ nextLetter +「)」;' –
@Bindindy - 對不起。我發現描述起來並不容易。我給了我一直在努力的一些示例代碼。關於要求和最後一些簡短例子的一些話。再加上幾個詞以防萬一:-) – JonAndMarie