Многостоловая вставка завершается неудачно для свойства 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 если у вас нет очень конкретной причины для его установки.

Другие вопросы по тегам