环境: 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
                                     {"列名 'Discriminator无效。\r\n列名 'Discriminator无效。\r\n列名 'Discriminator无效。\r\n列名 'FileUrl' 无效。"}问题解决方案:        [NotMapped]        private class ElfinderFileDto : ElfinderFile        {            pu...
                                    当看到这个异常时,一脸茫然,我的Linq语句里并没有使用这个“Discriminator”字段。然后看了看生成的sql语句,我去,居然出现了“Discriminator”这个字段。ON ([Extent4].[Discriminator] IN (N'YKSIPProductResponseVModel',N'YKSIPGoodsMapping')) 百度了一下:        异常的原因:我的E...
 <select id="queryAllEmpins" resultType="HashMap"
            resultMap="EmpInoMap">
        select * from empinfo
                                    使用EF code first编写类继承的时候,出现列名 'Discriminator' 无效。
字段中没有列名 'Discriminator'
原来在代码中,定义了一个类A,类B,B继承A,但是数据库中不存在B表,项目中只是用于ViewModel的定义而已。
此时,需要做的是,解除B表的映射。
[NotMapped]
    public class B ...
                                    新增的时候遇到一个问题:列名Discriminator无效,这个列是不存在于模型和数据表中的
其余多张表都可以新增成功,唯独当前新增表不能正常新增成功,查找各方原因结果如下:
实体数据库映射类不能被其他任何模型继承,也就是说需要和数据库做映射的表,不能被其他模型继承,否则会导致新增出现问题
                                    1,最近自学MVC+EF 框架中出现了一个错误,我定义了一个Model类型huodong(在数据库中表名称为huodongs),并且定义了一个huodong的子类HD继承它,如下
public class huodong
        public int Id { get; set; }
        public string Name { get; set; }
异常:列名 'Discriminator' 无效
异常描述:有一个Client表,Customer、Supplier、Partner类都继承Client,利用字段ClientType进行配置关系(ClientType=1为Customer,=2为Supplier,=3为Partner),问题就出在映射的
                                    前几天使用code first碰到错误:列名 'Discriminator' 无效。这是一个很少见的错误,搜索了很久才发现是code first的poco实体对象的继承问题。
比如,我定义了一个实体类,对应数据库的Project表:
                                    鉴别器和switch语句
无论是在C语言还是Java里,相信大家都会对switch语句有一定的印象,switch语句是多分支选择语句,即根据不同的字段,选择执行不同的语句,最大的用处就是用来处理多分支选择的场景。以前初学C语言的时候,把多选择结构用多个嵌套的if语句来实现,导致代码可读性低,switch语句正好解决这一代码冗长的问题。这篇日志写的鉴别器,discriminator标签,就是类似s...
                                    今天保存对象时碰到问题:
{"列名 'Discriminator' 无效。\r\n列名 'Discriminator' 无效。"}
 百度了一下,百度找到的一个解决:
http://www.itnose.net/detail/6251335.html
环境:asp.net 4.0 + MVC 4 + Entity Framework 5
异常:使用code first 碰到错误:列名 '...