0
У меня есть эти сгенерированные классы:Неверное имя столбца «» при вызове SaveChanges()
public partial class BookCategoryMapping
{
public int Id { get; set; }
public int CategoryPropertyId { get; set; }
public int GroupId { get; set; }
public string Value { get; set; }
public int OperatorId { get; set; }
public virtual CategoryProperties CategoryProperties { get; set; }
public virtual Group Group { get; set; }
public virtual Operator Operator { get; set; }
}
public partial class Operator
{
public Operator()
{
this.BookCategoryMapping = new HashSet<BookCategoryMapping>();
}
public int Id { get; set; }
public string Name { get; set; }
public virtual ICollection<BookCategoryMapping> BookCategoryMapping { get; set; }
}
Но всякий раз, когда я называю этот метод, с обновлением ложной. Я получаю
Неверное имя столбца «OperatorId»
public void SaveBookCategoryMapping(BookCategoryMapping bookCategoryMapping, bool update)
{
if (update)
_context.Entry(bookCategoryMapping).State = EntityState.Modified;
else
_context.BookCategoryMapping.Add(bookCategoryMapping);
_context.SaveChanges();
}
Я понятия не имею, как это может быть недействительным, так как классы генерируются из модели EDMX.
EDIT: Я попытался создать скрипт в SSMS. Я признаю, что столбец здесь. Но вставка все еще терпит неудачу.
Вы можете проверить, существует ли в базе данных столбец «OperatorId». Используете ли вы метод Database First при создании EDMX? Cheers –
@TKelly EDMX создается база данных сначала, да. И я triple проверил базу данных также. Столбец существует :-( –
Сбой при вставке и обновлении маршрутов? Сгенерирован SQL? Https://msdn.microsoft.com/en-us/data/dn469464.aspx?f=255&MSPPError=-2147217396 –