【发布时间】:2014-05-20 14:42:39
【问题描述】:
我正在尝试使用基本的 CRUD 操作创建一个通用存储库。我的 GetEntity 函数有问题
protected override T GetEntity(FinancialDataContext entityContext, int id)
{
var query = (from e in entityContext.Set<T>()
where e.Id == id
select e);
var result = query.FirstOrDefault();
return result;
}
错误出现在我的 e."Id" 上,并说“T 不包含 'Id' 的定义,并且找不到接受 'T' 类型的第一个参数的扩展方法 'Id'(缺失参考?)
如何引用 ID 的“承诺”?还是有其他解决方法?
【问题讨论】:
-
考虑为所有实体引入一些通用抽象类,比如
BaseEntity,它定义了 Id 属性。那么T可以声明为where T : BaseEntity -
我不确定你的意思@Andrei...
标签: c# asp.net .net generics repository