J'ai donc ces modèles:relation Configuration dans le code C# premier
ParentModel.cs
public class ParentModel {
...properties here
//relationship to Child
[ForeignKey("ChildModelID")]
public ChildModel ChildModel { get; set; }
}
ChildModel.cs
public class ChildModel{
...properties here
//relationship to parent
[ForeignKey("ParentModel")]
public int? ParentModelID { get; set; }
public ParentModel ParentModel { get; set; }
}
J'utilise l'API Web de code premier. Je suis nouveau à cela. Et j'obtiens l'erreur ci-dessous quand la base de données est créée. Mais si je supprime la propriété de navigation dans ParentModel (c'est-à-dire public ChildModel ChildModel { get; set; }
), tout fonctionne correctement, sauf que cela ne répond pas à mes besoins. Je veux charger ardemment (ou charge paresseuse ne sachant pas quel terme est exact) le ChildModel quand j'obtiens le ParentModel. La relation ici est Zéro ou One-to-One. Cela signifie que ChildModel peut avoir un enregistrement qui n'a pas de référence dans ParentModel.
Multiplicity is not valid in Role 'ChildModel_ParentModel_Source' in relationship
'ChildModel_ParentModel'. Because the Dependent Role properties are not the key
properties, the upper bound of the multiplicity of the Dependent Role must
be '*'.
Merci d'avance!
comment supprimer à propos de [ForeignKey ("ChildModelID")] de ParentModel? – yyou
Toujours le même, à l'origine ce code n'était pas là mais une réponse en ligne me l'a suggéré mais ne fonctionne toujours pas. – Jed
Copie possible de [EF6 clé étrangère avec relation un-à-un et navigation de propriété bidirectionnelle] (https://stackoverflow.com/questions/42515355/ef6-foreign-key-with-one-to-one-relationship -et-two-way-property-navigation) –