通过ID查找继承的对象 - 实体框架

时间:2012-11-24 21:02:29

标签: c# sql entity-framework entity

正如您在下图所示,我有一个基类“Person”的模型,两个实体“Kunde”和“Techniker”都继承了基类。

现在我遇到了以下问题。当我尝试使用方法Find来获取具有给定ID的派生类Kunde的对象时,它告诉我OfType<TResult>是一个方法,并且在此上下文中无效。

public Kunde GetById(int id)
{
   return dbModel.PersonMenge.OfType<Kunde>.Find(id);
}

我也尝试删除OfType但它显然告诉我对象Person不能隐式转换为Kunde。

这里有什么我想念的吗?

1 个答案:

答案 0 :(得分:1)

这只是两个括号:

OfType<Kunde>()

但是你不能再使用Find了,因为这是DbSet的一种方法。您必须使用SingledbModel.PersonMenge.Find(id) as Kunde;

相关问题