Tôi có một số bản ghi Phụ huynh đã được chèn vào cơ sở dữ liệu. Bây giờ tôi muốn thêm một số hồ sơ trẻ em. Để thực hiện điều này, tôi đi theo các bước sau:Chèn bản ghi vào bảng con khi bản ghi cha đã tồn tại bằng mã khung Entity trước tiên
- Lấy Phụ Huynh (A) ghi
- Tạo một bản ghi con (B) mới
- Thêm kỷ lục cha mẹ đối với tài sản của trẻ em Navigation. B.A = A
- Gọi SaveChanges.
Vấn đề là khi tôi làm điều này EF chèn một phụ huynh mới và sau đó thêm con với một khóa nước ngoài trỏ đến cha mẹ mới được chèn vào thay vì chỉ chèn con với ánh xạ tới cha mẹ hiện có. Tôi cũng đã kiểm tra khóa chính của cha mẹ khi lưu con và nó tồn tại trong cơ sở dữ liệu.
Lưu ý rằng tôi đang sử dụng danh tính được tạo cơ sở dữ liệu cho Cha mẹ và Trẻ em. Một điều tôi nhận thấy là nếu tôi thêm/Lưu phụ huynh và trẻ em từ cùng một đối tượng bối cảnh thì nó hoạt động tốt.
Cần khắc phục điều này càng sớm càng tốt. Chúng tôi rất trân trọng bất kỳ sự giúp đỡ nào.
Cách tiếp cận thứ hai phù hợp với tôi. Cảm ơn rất nhiều. – Amit
Có cùng một vấn đề. Bạn có thể vui lòng xem: http://stackoverflow.com/questions/16131090/the-relationship-could-not-be-changed-the-foreign-key-properties-is-non-nulla/16131494?noredirect= 1 # comment23046042_16131494? Tôi nhận được 'MamConfiguration_V1' tại bối cảnh smae tôi lưu các thay đổi. Nó được gắn vào cùng một ngữ cảnh. Luồng: nhận được MamConfiguration_V1 với Id mà tôi nhận được trong giao diện người dùng (chế độ chỉnh sửa) -> gán tất cả các giá trị cho nó từ giao diện người dùng -> ghi đè \ add \ delete tham chiếu (điều hướng) 'MamConfigurationToBrowser_V1'. Điều đó có thêm thông tin không? –
+1 Mỗi ngày tôi học điều gì đó mới mẻ và đây là giải thích tốt nhất cho vấn đề này mà tôi đã từng gặp. Cảm ơn bạn! –