Я разрабатываю приложение ASP.NET MVC 4 с использованием VS 2010 и EF 4.3. Он извлекает некоторые данные из внешней базы данных, и все работает так, как ожидалось, пока я не попытался перекомпилировать его в один прекрасный день. После компиляции я получаю следующую ошибку EF:
Недопустимое имя столбца 'CreatedOn'.
Никаких изменений в DB или код не было сделано - я просто добавил некоторые отступы для чтения. Предыдущие версии приложений из 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);
}
}
И это класс Label
public class BaseEntity : IDataEntity
{
public int Id { get; set; }
public string Name { get; set; }
public string ChangedBy { get; set; }
}
public class Label : BaseEntity
{
}