2017-05-15 47 views
1

我想比較兩個包含使用Razor的ID的字符串,但我無法弄清楚如何正確地進行比較。使用Razor檢查兩個字符串中的ID

我有兩個列表。

列表1,它是放置在cookie中的字符串,包含用戶上次訪問的所有頁面。

列表2是用戶當前訪問的所有頁面的字符串。

我想要做的是對這兩個字符串進行比較,以查看列表2中是否存在頁面ID,該列表不在List 1中。然後,該頁面將成爲自上次vist以來的新頁面。

我有這段代碼。

var pageList = Request.Cookies["pageCookie"].Value; 

var allPages = siteroot.Descendants("Event"); 

var idList = ""; 

foreach (var node in allPages.Where("Visible")) 
{ 
    idList += node.Id+","; 
} 

兩個名單看起來像:

List1: 1525,1585,1595,1600,1605,1610,1885 
List2: 1525,1585,1595,1600,1605,1610,1885,1900 

然後我想檢查這兩個字符串,看看是否有在列表2的ID這是不是在清單1所示:

if((id in list 2 not in list 1)) { 
    output section 
} 

這將發現ID 1900不在列表1.

+0

可能的重複[ASP.NET MVC 3 Compare 2列表與模型對象重複](http://stackoverflow.com/questions/10710835/asp-net-mvc-3-compare-2-lists- with-model-objects-for-duplicates) –

回答

1

試試這個:

if (list2.Split(',').Except(list1.Split(',')).Any()) { 
      //output section 
     } 
+0

這很好用!真棒!謝謝! –

相關問題