使用EF code first编写类继承的时候,出现列名 'Discriminator' 无效 . 字段中没有列名 'Discriminator' 原来在代码中,定义了一个类A,类B,B继承A,但是数据库中不存在B表,项目中只是用于ViewModel的定义而已. 此时,需要做的是,解除B表的映射. [NotMapped] public class B : A { //to do something }
转载:https://blog.csdn.net/lanse_my/article/details/38128355 前几天使用code first碰到错误:列名 'Discriminator' 无效.这是一个很少见的错误,搜索了很久才发现是code first的poco实体对象的继承问题. 比如,我定义了一个实体类,对应数据库的Project表: public class Project { int Id { get; set; } string Name { get; set; } } 后来
环境: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; } } 后来又定义了一个子类ChildP
笔记: EF出现列名 'Discriminator' 无效: 类没有加入数据库上下文也被数据迁移生成表: 出现该问题一般是使用了某个基类继承了实体类: 原因是code first的POCO实体对象的继承问题,EF会把项目中在DbContext中引用的所有的Model类及这些Model类对应的子类都生成对应映射视图.如果数据库没有对应表或字段就会报错. 解决办法:只需要在类前面加上[NotMapped],表示应从数据库映射中排除属性或类. [NotMapped] public class Comm
原文:使用ROW_NUMBER()查询:列名 'RowNumber' 无效. 使用ROW_NUMBER()方法查询结果集:语句如下: select ROW_NUMBER() OVER(ORDER BY dbo.OrderOutProduct.ID) AS RowNumber, dbo.Order.ID,Telephone,AddressCity,Province, from dbo.Order inner join dbo.Order2 on dbo.Order.ID=Order2ID in
问题描述 : 数据库中有两张表,如下: Member(会员)表有外键RoleId,对应的是Role(角色)表的主键Id,业务逻辑是Member表的RoleId必须与Role表的Id对应(但在设计数据表时没有设置外键,使用EF(Entity Framework,下同)来配置) 首页Member的代码如下: public partial class Member { public int Id { get; set; } public string Name { get; set; } public
前几天使用code first碰到错误:列名 'Discriminator' 无效.这是一个很少见的错误,搜索了很久才发现是code first的poco实体对象的继承问题. 比如,我定义了一个实体类,对应数据库的Project表: 1 2 3 4 5 6 [Table("T_Student")] public class Student { public int Id { get; set; } public string Name { get; set; } } 后
当我们使用某个表达式作为输出的一列时,我们无法再Where条件中直接使用该列作判断条件. 例如下面的SQL语句: select id, (c1 + c2) as s from t1 where s > 100 SQL Server 报错: "列名 s 无效" 当然,写成 select id, (c1 + c2) as s from t1 where (c1 + c2) > 100 就没问题了. 可是当表达式复杂时就很繁琐了. 有没有可