具有annonymouse类型的Union方法中的IEqualityComparer
本文关键字:IEqualityComparer 方法 Union 类型 具有 annonymouse | 更新日期: 2023-09-27 18:21:31
我写了一个这样的查询:
context.PageGroupLangsInSettings
.Where(x => x.PageGroupLang.Language.CaltureId == langCaltureId && x.PageGroupLang.PageGroup.Id == pageGroupId)
.Select(x => new { x.Key, x.Value, Order = 0 })
.Union(
context.PageGroupSavedSettingDetails
.Where(x => x.PageGroupSavedSettings.PageGroupLangs
.Where(y => y.Language.CaltureId == langCaltureId && y.PageGroup.Id == pageGroupId).Any())
.Select(x => new { x.Key, x.Value, Order = 1 })
).ToList()
现在我想使用IEqualityCompare来比较"key"字段,但我不知道该怎么做。感谢:)
匿名类型的属性只能在声明它的方法中访问。但是,如果您要退出该方法,访问成员可能需要使用反射或其他解决方法。相反,您可以尝试创建一个类来保存投影或使用Dictionary。