Ця річ зводить мене з розуму, і помилка для мене цілком безглузда:
Неможливо оновити EntitySet 'TableB', оскільки в ньому є DefiningQuery і в елементі немає елемента, який би підтримував поточну операцію.
Мої таблиці розміщені так:
ТаблицяА int idA (ідентифікація, первинний ключ) ... ТаблицяB int idA (FK для TableA.idA) int val
TableB не має визначеного первинного ключа на SQL-сервері. Entity Framework імпортував таблицю та асоціацію та встановив обидва поля як ключові. Але ця помилка виведе, коли я спробую зробити вставку в таблицю!
Що не так??
Редагувати: Як запропонував Алекс, рішення було таким:
- Клацніть правою кнопкою миші на файл edmx, виберіть Відкрити за допомогою, редактор XML
- Знайдіть об'єкт у елементі edmx: StorageModels
- Видаліть DefiningQuery повністю
- Перейменуйте магазин: Schema = "dbo" у Schema = "dbo" (інакше код створить помилку, кажучи, що ім'я недійсне)
- Видаліть магазин: Властивість імені
Я залишив ключ таким, яким він був, оскільки мені було нормально, що обидва стовпці є частиною ключа.