Ottengo questo errore:
Il ForeignKeyAttribute sulla proprietà 'SubdivisionsHOA' sul tipo 'HealthOfAustralia.DAL.Models.ContentArticleHOAsubdivision' non è valido. Il nome della chiave esterna 'SubdivisionHOAId' non è stato trovato nel tipo dipendente 'HealthOfAustralia.DAL.Models.SubdivisionHOA'. Il valore Nome dovrebbe essere un elenco separato da virgole di nomi di proprietà di chiave esterna.
Ecco le classi del modello:
public partial class ContentArticleHOAsubdivision
{
public int Id { get; set; }
public long ContentArticleId { get; set; }
public short SubdivisionHOAId { get; set; }
[ForeignKey("ContentArticleId")]
public virtual ContentArticleHOA ContentArticleHOA { get; set; }
[ForeignKey("SubdivisionHOAId")]
public virtual ICollection<SubdivisionHOA> SubdivisionsHOA { get; set; }
}
public partial class SubdivisionHOA
{
[Key, ForeignKey("TopTierDivisionHOA")]
public short Id { get; set; }
public string Name { get; set; }
public virtual TopTierDivisionHOA TopTierDivisionHOA { get; set; }
}
Che cosa sto facendo di sbagliato?
Devi scegliere one to many
relazione su one to many
e usare il seguente codice:
public class ContentArticleHOAsubdivision
{
...Comment this
//public short SubdivisionHOAId { get; set; }
...
[InverseProperty(" create property for ContentArticleHOAsubdivision on SubdivisionHOA")]
public virtual ICollection<SubdivisionHOA> SubdivisionsHOA { get; set; }
}
o one to one
con questo:
[ForeignKey("SubdivisionHOA")]
public short SubdivisionHOAId { get; set; }
public virtual SubdivisionHOA SubdivisionsHOA { get; set; }