2012-02-12 28 views
5

Trong ứng dụng của tôi, tôi có một phương thức mà tôi gọi từ mã. ."... đã xảy ra lỗi khi cập nhật bối cảnh đối tượng. ObjectContext có thể ở trạng thái không nhất quán ...."

Tôi vừa tạo một phương thức lớn mới cũng bổ sung nhiều dữ liệu hơn vào cơ sở dữ liệu.

Khi tôi gọi đây, nó xuất hiện để làm việc tốt lần đầu tiên nó đã chạy, nhưng, nếu tôi chạy nó một lần nữa trong vòng vài phút của nỗ lực trước đây, tôi nhận được lỗi sau:

The changes to the database were committed successfully, but an error occurred while updating the object context. The ObjectContext might be in an inconsistent state. Inner exception message: AcceptChanges cannot continue because the object's key values conflict with another object in the ObjectStateManager. Make sure that the key values are unique before calling AcceptChanges.

Tôi không chắc chắn làm thế nào để sửa lỗi này, bất cứ ai có thể tư vấn cho bất cứ điều gì? (ngoài việc không chạy nó trong vòng vài phút sau lần thử cuối cùng!).

+1

thể trùng lặp của [InvalidOperationException khi gọi SaveChanges trong khuôn khổ NET Entity] (http://stackoverflow.com/questions/1008582/invalidoperationexception-when-calling- savechanges-in-net-entity-framework) – Eranga

+0

@Eranga - Tôi đã đọc qua điều đó, nhưng, tôi không thể liên quan đến vấn đề đó hoặc sửa lỗi này bằng giải pháp đó. – Wil

+0

Rất khó trả lời mà không có thông tin chi tiết về các lớp học có liên quan (ít nhất là thuộc tính PK và FK). –

Trả lời

0

có thể trùng lặp của:

Dưới đây là u liên kết hữu ích về cách làm việc với các đơn vị tự theo dõi và quản lý đối tượng Nhà nước

+2

Có thể "đáng lẽ phải là một nhận xét" –

+0

Xin lỗi, tôi không biết điều đó nhưng tôi sẽ giữ nó trong tâm trí! :) – Abbas

2

Lỗi này thường xảy ra khi bạn cố gắng tiết kiệm một mô hình tổ chức mà chưa xác định rõ các khóa chính (key composite) như như thế nào trong cơ sở dữ liệu.

Xác định các phím trong tập tin EntityTypeConfiguration như

this.HasKey(f => new { f.ID1, f.ID2 }); 
Các vấn đề liên quan