Điều này đang khiến tôi phát điên, và lỗi này khá vô nghĩa với tôi:
Không thể cập nhật Entityset 'TableB' vì nó có DefiningQuery và không có phần tử nào tồn tại trong phần tử để hỗ trợ hoạt động hiện tại.
Các bảng của tôi được đặt như thế này:
BảngA int idA (danh tính, khóa chính) ... BảngB int idA (FK cho TableA.idA) int val
TableB không có khóa chính được xác định trong máy chủ SQL. Entity Framework đã nhập bảng và liên kết và đặt cả hai trường làm khóa. Nhưng nó sẽ xuất ra lỗi đó khi tôi cố gắng chèn vào bảng!
Chuyện gì vậy??
Chỉnh sửa: Theo đề xuất của Alex, giải pháp là:
- Nhấp chuột phải vào tệp edmx, chọn Mở bằng, trình soạn thảo XML
- Xác định vị trí thực thể trong phần tử edmx: StorageModels
- Xóa hoàn toàn DefiningQuery
- Đổi tên cửa hàng: Schema = "dbo" thành Schema = "dbo" (nếu không, mã sẽ tạo ra lỗi cho biết tên không hợp lệ)
- Xóa cửa hàng: Tên tài sản
Tôi đã để lại chìa khóa, vì nó ổn với tôi rằng cả hai cột đều là một phần của khóa.