sql >> Databáze >  >> RDS >> PostgreSQL

Chyba v LINQ (sloupec neexistuje) při použití Entity Framework

Může se to stát, pokud máte vlastnosti inverzní navigace v contractors třída, takhle:

public partial class contractors
{
    //...

    public virtual ICollection<a> aCollection { get; set; }
    public virtual ICollection<a> aCollection1 { get; set; }
}

V tomto případě EF nebude vědět, která patří ke které navigační vlastnosti ve třídě a a předpokládejte čtyři vztahy místo dvou (nebo tři místo dvou, pokud máte pouze jednu kolekci). Tyto další vztahy budou mít samostatný cizí klíč a jeden z nich je contractors_id . Pokud to v databázi neexistuje, dostanete výjimku.

Problém můžete vyřešit použitím InverseProperty atribut ve třídě a :

[InverseProperty("aCollection")]
public virtual contractors contractors { get; set; }
[InverseProperty("aCollection1")]
public virtual contractors contractors1 { get; set; }



  1. Při rozdělování pevné hodnoty do zemí na základě denního podílu z příjmů vylučte určité hodnoty

  2. PHP:výpočet narozenin od věku

  3. Převod relační algebry na odpovídající SQL dotaz

  4. Jak zaokrouhlit čísla v databázi na dvě desetinná místa pomocí dotazu MySql