2015-06-16 135 views
-2

我試圖編寫一個ling查詢,它基本上查看msg對象頭部的序列號,並檢查是否存在與list1中的值相同的值。我是Linq的新手,嘗試過但沒有運氣。任何幫助將不勝感激!Linq查詢不能按預期運行

for (int i =0; i < list1.Count; i++) 
{ 
    List<int> list1; 
    list1.Add("3333"); 
    string c = msg = (list1[i] => msg.Header.SerialNumber = list1[i].ToString()); 
    Console.WriteLine(c); 
} 
+3

我不沒有看到任何LINQ。 '沒有運氣'是什麼意思?什麼是'list1'?什麼是'味精'?請給出一個[最小,完整和可驗證的示例](http://stackoverflow.com/help/mcve),其中顯示了您的問題。 –

+0

看起來你只需要閱讀一些關於LINQ和一般C#的簡介教程。 – Servy

+1

在嘗試lambda表達式之前先學習c# –

回答

1

你的查詢可以做得更簡單,假設列表1是與潛在的頭數和兩個序列號和數組內容有兼容的數據類型的數組:

list1.Any(v => v.Equals(msg.Header.SerialNumber)) 
1
int count = list1.Count(i=>i.value == msg.Header.SerialNumber); 
if(count == 0){ Console.WriteLine(msg);}