Многостоловая вставка завершается неудачно для свойства EntityKey
Я пытаюсь обновить 2 таблицы: РЕСТОРАН и ЧАСЫ. Таблицы являются ключом REST_ID. Я получаю сообщение об ошибке со стрелкой (==>): извините, я пытаюсь научить себя этому, и я впервые пробую вставку из нескольких таблиц.
Невозможно добавить или присоединить объект, поскольку его EntityReference имеет значение свойства EntityKey, которое не соответствует EntityKey для этого объекта.
RESTAURANT addRest = new RESTAURANT();
addRest.REST_NAME = r_name;
addRest.REST_STREET1 = r_street;
addRest.CITY_ID = c_id;
addRest.REST_PHONE = r_phone;
addRest.REST_WEBSITE = r_web;
addRest.HOUR = new HOUR();
addRest.HOUR.HOURS_SUN = h_su;
addRest.HOUR.HOURS_MON = h_mo;
addRest.HOUR.HOURS_TUE = h_tu;
addRest.HOUR.HOURS_WED = h_we;
addRest.HOUR.HOURS_THU = h_th;
addRest.HOUR.HOURS_FRI = h_fr;
addRest.HOUR.HOURS_SAT = h_sa;
addRest.HOURReference.EntityKey = new EntityKey("FVTCEntities.HOURS", "HOURS", 1);
==> db.AddToRESTAURANTs(addRest);
db.SaveChanges();
1 ответ
Решение
Это не LINQ to SQL. Это Entity Framework.
Вам не нужно устанавливать EntityKey
, обычно. Просто установите HOUR
свойства, как любой тип POCO. игнорировать EntityKey
если у вас нет очень конкретной причины для его установки.