[英]Check if list of string contains object property value, and if it does remove it from the list of strings
我有以下字符串列表:
List<string> clubs = dropdownSelectedvalue.Split(',').ToList();
值將是例如:1255、1233、2233。 現在,我具有與俱樂部列表中的值具有相同的propertyid的對象。 我想實現的是從ID列表中清除現有propertyid的俱樂部列表,並僅保留不存在的ID。
這是對象:
public class Clubs
{
public int? ClubId { get; set; }
public string ClubName { get; set; }
}
是否有任何linq命令或類似的東西可以用於此問題?
添加的代碼:
List<string> newClubs = clubs.Remove(s => Club.ClubId.ToString().Equals(clubs));
像這樣,但是還沒有完成,我已經達到了這一點。
每個請求添加的附加代碼:
List<Clubs> Clubs = Clubs.LoadAll();
foreach (Clubs club in Clubs)
{
var dropdownSelectedvalue = values[sponsor.WebUserId.Value.ToString()];
List<string> clubs = dropdownSelectedvalue.Split(',').ToList();
List<string> newClubs = ?
}
英語:給我所有俱樂部,但我的俱樂部ID列表不包含俱樂部的ClubId
Linq:
var query = clubList.Where(c => !clubs.Contains(c.ClubID));
最易讀的方式是:
var newClubs = clubs.Except(allClubs).ToList();
並且您會在俱樂部課程中隱含IEquatable<Club>
。
參見http://msdn.microsoft.com/zh-cn/library/vstudio/bb300779(v=vs.100).aspx
或者,如果您只想處理字符串,請將allClubs列表僅投影到俱樂部名稱(使用Select
),然后在字符串上使用Except
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.