是否可以使用实体框架附加派生类?

时间:2018-06-25 14:38:39

标签: c# entity-framework entity-framework-6

我无济于事,因此假设无法使用实体框架(6)调用从实体模型派生的类上的Attach()吗?我正在使用“数据库优先”的方法。

例如,如下插入类Dog

public partial class Animal //this will insert fine.
{
   public long AnimalId
}

public class Dog:Animal //this will not insert.
{
}

我当前收到错误消息:

  

实体类型Dog不是当前上下文模型的一部分。

完整代码:

           public class Dog : Animal
           {
           }

            using (var context = new CalibrationManagerEntities())
            {
                var a = new Animal() { AnimalId = 0 };
                var b = context.Entry(a); //works

                var c = new Dog() { AnimalId = 0 };
                var d = context.Entry(c); //throws exception
            }

1 个答案:

答案 0 :(得分:-1)

把狗当成动物应该可以解决问题

context.Attach((Animal)dog)