Как игнорировать свойства в Entity Framework 6 для обновления?

123
17

В настоящее время я пытаюсь обновить с помощью Entity Framework 6, и у меня есть некоторые проблемы с ginven PK- свойством в моей БД, которые я НЕ ДОЛЖЕН редактировать, но не могу найти правильный способ игнорировать его.

myobj aux = new obj(){
//code
};

using (var context = new ModelEntity())
{
var item = context.mytable.Find(id);
context.Entry(item).CurrentValues.SetValues(aux);
context.SaveChanges();
}

Я получаю ошибку: свойство "xxxx" является частью информации о ключе объекта и не может быть изменено. '

Я искал своего рода игнорирование и ничего не нашел. Все, что я нахожу, это EF4 и 5.

спросил(а) 2020-04-04T00:12:10+03:00 6 месяцев, 2 недели назад
1
Решение
57

Если вы пытаетесь игнорировать свойства в сущности, вам нужно добавить атрибут [NotMapped] к этому свойству в классе. Дополнительная документация здесь: https://docs.microsoft.com/en-us/ef/core/modeling/included-properties

Кроме того, кажется, что представленная ошибка больше связана с попыткой изменить основной ключ или индекс. Я вижу, что на это на самом деле ответили: qaru.site/questions/213881/...

ответил(а) 2020-04-04T00:31:09.227477+03:00 6 месяцев, 2 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема