【发布时间】:2015-08-20 09:17:52
【问题描述】:
我有这个 linq 到实体行:
myentity.CityType.Add(context.Set<SiteCityType>().FindAsync(2));
实体是 myentity 和 SiteCityType 是已定义的实体。 CityType 是在 myentity 实体中定义的导航属性:
public virtual ICollection<SiteCityType> CityType { get; set; }
上面的 linq 行正常工作,但我需要 FindAsync 方法获取 List:
myentity.CityType.Add(context.Set<SiteCityType>().FindAsync('some list of ints'));
知道如何实现它吗?
【问题讨论】:
-
我建议您实现自定义方法(创建存储库并添加您喜欢的方法)。
-
你可以使用 Where(siteCityType => list.Contains(siteCityType.Id)) 而不是 FindAsync
-
@stefchri。添加扩展只获取单个项目而不是集合,因此使您的示例工作存在问题
-
我们为什么要实现已经存在的东西? (
Contains)。
标签: c# linq entity-framework