Det kan ske, hvis du har omvendte navigationsegenskaber i contractors klasse, sådan:
public partial class contractors
{
//...
public virtual ICollection<a> aCollection { get; set; }
public virtual ICollection<a> aCollection1 { get; set; }
}
I dette tilfælde vil EF ikke vide, hvilken der hører til hvilken navigationsegenskab i klassen a og antag fire forhold i stedet for to (eller tre i stedet for to, hvis du kun har én samling). Disse yderligere relationer vil have en separat fremmednøgle, og en af dem er contractors_id . Hvis det ikke findes i databasen, får du en undtagelse.
Du kan løse problemet ved at anvende InverseProperty attribut i klassen a :
[InverseProperty("aCollection")]
public virtual contractors contractors { get; set; }
[InverseProperty("aCollection1")]
public virtual contractors contractors1 { get; set; }