У меня есть EF объект с струнным ПК, Иной entityes, связанным с нимEF Изменить значение первичного ключа
public class E1
{
public string PK {get;set;}
.....
}
Во время моего proccess я назначить временный ПК для всей моей структуры (E1 и связанные с ним лица), ожидающее для подтверждения документа.
Если пользователь подтверждает, я назначить definitelly ПК и обновляет базу данных всех ONCASCADE
Моя проблема, когда я пытаюсь изменить состояние E1, он бросает это исключение
недвижимости " PK 'является частью информации об объектном ключе, не может быть изменен
Как я могу это сделать, чтобы избежать этого исключения?
Почему он находится в базе данных, прежде чем он будет подтвержден? – Default
Потому что нам нужно отслеживать доступность инвентаря в любое время. Все документы отслеживаются как часть намерений покупки до тех пор, пока они не будут сгруппированы или отклонены. –
Вы не можете обновить ПК с помощью EntityFramework. Если вы действительно хотите обойти это. Вы можете написать процедуру хранения и вызвать его. Но, возможно, вы могли бы изменить свою модель данных для использования Identity PK и использовать свою строку как уникальный индекс. –