【发布时间】:2013-10-09 09:38:37
【问题描述】:
我有 2 个不同类型的集合。我想匹配那些集合中的一个字符串并返回不匹配的集合。
1) ac_CategoryList
2) mw_CharityList
如果 ac_CategoryList.Title 存在于 mw_CharityList.EntryTitle 中,则希望匹配。如果不存在,则返回不匹配的 ac_CategoryList 集合项。并返回一个在 ac_CategoryList.Title 中匹配的 mw_CharityList 类型的集合。因为我需要更新 mw_CharityList 集合中的状态。
var var charityList = _db.mw_CompetitionsEntry.Where(e => e.IsInvalid == false && e.IsPublished).ToList(); // first get the entire valid collection
var categoryList = _db.ac_Category.Where(c => c.Title != null && c.IsDeleted == false).ToList(); // get the entire valid collection
var titleNotExitsCollection = categoryList.Where(c => charityList.Any(e => e.EntryTitle.Trim() != c.Title.Trim())).ToList();
var titleExitsCollection = charityList.Where(e => categoryList.Any(c => c.Title.Trim() == e.EntryTitle.Trim())).ToList();
现在 titleNotExitsCollection 和 titleExitsCollection 返回相同的记录数。我不知道我做错了什么...请帮助
【问题讨论】:
标签: c# asp.net linq c#-4.0 lambda