簡體   English   中英

檢查字符串列表是否包含對象屬性值,是否將其從字符串列表中刪除

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM