我正在使用VS 2010和EF 4.3开发ASP.NET MVC 4应用程序.它从外部数据库中检索一些数据,并且所有数据都按预期工作,直到我有一天尝试重新编译它.编译后,我收到以下EF错误:
列名称"CreatedOn"无效.
没有进行数据库或代码更改 - 我只是添加了一些缩进以便于阅读.来自TFS的先前应用程序版本也抛出相同的异常.
我的CreatedOn实体中没有属性,数据库中没有这样的字段,我不需要它,在任何情况下都不需要它.
应该怎么做才能避免这种异常?
这是我用来访问数据的自定义数据库上下文:
public class MyContext<T> : DbContext where T : class, IDataEntity
{
public MyContext(string connectionKey)
: base("name=" + connectionKey)
{
Configuration.AutoDetectChangesEnabled = false;
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Label>().Property(item => item.Id).HasColumnName("LabelId");
modelBuilder.Entity<Label>().Ignore(item => item.ChangedBy);
}
}
Run Code Online (Sandbox Code Playgroud)
这是Label类
public class BaseEntity : IDataEntity
{
public int Id { get; set; }
public string Name { get; set; }
public string ChangedBy { get; set; }
} …Run Code Online (Sandbox Code Playgroud)