C# “我可以创建”吗;“继电器”;或;“一般化”;实体框架模型的属性?
我希望我的措辞有意义。。。我不太清楚该如何解释我想做什么 我在泛型类中有一个方法,它返回一个实体列表,如下所示:C# “我可以创建”吗;“继电器”;或;“一般化”;实体框架模型的属性?,c#,asp.net-mvc,entity-framework,C#,Asp.net Mvc,Entity Framework,我希望我的措辞有意义。。。我不太清楚该如何解释我想做什么 我在泛型类中有一个方法,它返回一个实体列表,如下所示: public abstract class ChildCRUDController<TModel> : CRUDController<TModel, ... > where TModel : IChildEntity public ViewResult List(int id) { return View(repository.GetMany
public abstract class ChildCRUDController<TModel> : CRUDController<TModel, ... >
where TModel : IChildEntity
public ViewResult List(int id)
{
return View(repository.GetMany(x => x.ParentID == id));
}
而且
public partial class Transaction : IChildEntity
{
public int ParentID
{
get { return LeaseID; }
set { LeaseID= ParentID; }
}
}
但是当我调用上面的List方法时,我得到以下错误:
LINQ to实体中不支持指定的类型成员“ParentID”。仅支持初始值设定项、实体成员和实体导航属性
有没有什么方法可以在不将对象集拉入内存或重命名实体本身的所有属性的情况下实现我想要的结果
谢谢 如果您愿意将字段名传递到
List
方法中,并构建自己的查询,您可以使用本文中描述的技术来实现:
或者,您可以为
ChildCRUDController
提供另一个泛型类型参数,该参数约束在提供字段名的接口上,然后再次动态使用它。不知道动态LINQ库。谢谢
public partial class Transaction : IChildEntity
{
public int ParentID
{
get { return LeaseID; }
set { LeaseID= ParentID; }
}
}