zoukankan      html  css  js  c++  java
  • .net mvc 列名 'Discriminator' 无效

    环境:asp.net 4.0 + MVC 4 + Entity Framework 5
    异常:使用code first 碰到错误:列名 'Discriminator' 无效。这是一个很少见的错误,搜索了很久才发现是code first 的poco实体对象的继承问题。
    比如,我定义了一个实体类,对应数据库的Project表:

        public class Project  
        {  
            int Id { get; set; }  
            string Name { get; set; }  
        }  
    

     后来又定义了一个子类ChildProject继承于它,但是子类不对应数据库任何表:

        public class ChildProject : Project  
        {  
          
        }  
    

     于是每次EF的Context访问到Project或者ChildProject的时候,都出现了错误:列名 'Discriminator' 无效。
    解决办法:子类并不映射到任何数据库,加上一个不映射的属性[NotMapped]就可以了。

        [NotMapped]  
        public class ChildProject : Project  
        {  
          
        }  
    

     转自:https://blog.csdn.net/ycwol/article/details/45153663

  • 相关阅读:
    第二周作业
    十二周
    十一周
    第十周
    第九周
    第八周
    第七周
    第六周
    实验报告三
    第四周课程总结&试验报告(二)
  • 原文地址:https://www.cnblogs.com/hycms/p/8943832.html
Copyright © 2011-2022 走看看