2017-07-17 75 views
-2

我有一個foreach循環返回是這樣的:去重複每個循環C#

value 1 
value 1 
value 1 
value 2 
value 2 
value 2 
value 2 

我需要獲得該名單,但只有第一種類型的。所以,

value 1 
value 2 

下面是我的代碼。

<div> 
    @foreach (var publishedVideo in allVideos) 
    { 
     <p>@publishedVideo.GetPropertyValue("segment")</p> 
    } 
</div> 

如何取消重複列表?

+3

'allVideos.Distinct()'也許? (如果你的視頻適當地實現了平等......) –

+1

'爲每個循環取消重複c#[複製]'我喜歡這個標題。 – Flater

+0

@Flater在蘇聯俄羅斯,有關重複的問題與您重複。 – silkfire

回答

2

假設你的類沒有實現一個相等比較(因此Distinct將無法​​正常工作),你可以這樣做:

<div> 
    @{ 
     var nonDuplicatedVideos = allVideos. 
      .Select(x => x.GetPropertyValue("segment")) 
      .Distinct(); 
    } 
    @foreach (var publishedVideo in nonDuplicatedVideos) 
    { 
     <p>@publishedVideo</p> 
    } 
</div> 
+0

感謝Camilo回答這個問題。 @mjwills - 歡迎將問題標記爲重複。雖然它是重複的,但顯然這兩個答案是不同的。而'重複'的答案並沒有解決我的問題。布拉沃。再次感謝Camilo –

+1

僅供參考,您不需要'ToList'。 – juharr

+0

@juharr是的,我知道,我只是發現ToList更具可讀性。 –