Điều này có thể xảy ra nếu bạn có thuộc tính điều hướng nghịch đảo trong contractors
lớp học, như vậy:
public partial class contractors
{
//...
public virtual ICollection<a> aCollection { get; set; }
public virtual ICollection<a> aCollection1 { get; set; }
}
Trong trường hợp này, EF sẽ không biết cái nào thuộc thuộc tính điều hướng nào trong lớp a
và giả sử có bốn mối quan hệ thay vì hai (hoặc ba thay vì hai nếu bạn chỉ có một bộ sưu tập). Các mối quan hệ bổ sung đó sẽ có một khóa ngoại riêng biệt và một trong số đó là contractors_id
. Nếu điều đó không tồn tại trong cơ sở dữ liệu, bạn sẽ có một ngoại lệ.
Bạn có thể khắc phục sự cố bằng cách áp dụng InverseProperty
thuộc tính trong lớp a
:
[InverseProperty("aCollection")]
public virtual contractors contractors { get; set; }
[InverseProperty("aCollection1")]
public virtual contractors contractors1 { get; set; }