我有一個接口IMstTuver
,它由MstTuver
類實現。 IMstTuver
包含MaxVersion
和Agenttype
參數。使用實體框架的DBContext中的泛型
public class GetTable<T> where T : IMstTuver
{
public IMstTuver GetEntities(DbContext context, string agenttype)
{
long maxVersion = context.Set<T>().Max(x => x.MaxVersion);
IMstTuver mstTuver = context.Set<T>()
.Where(x => x.MaxVersion == maxVersion &&
x.AgentType == agenttype)
.FirstOrDefault();
return mstTuver;
}
}
在我的課:
table.GetEntities(MyDbContext, "MSMA") as MstTuver;
我得到一個錯誤
類型「T」必須是引用類型,以便用它作爲參數「TEntity」泛型類型或方法'System.Data.Entity.DbSet'
請幫忙。
起初,這是不是他的問題,和第二,這也將導致他的錯誤; d –
@FrerkMorrin - 固定的錯誤。 – Igor