Maison >développement back-end >C++ >Comment mettre en œuvre une relation de plusieurs à plusieurs avec des propriétés supplémentaires dans EF Core?

Comment mettre en œuvre une relation de plusieurs à plusieurs avec des propriétés supplémentaires dans EF Core?

Linda Hamilton
Linda Hamiltonoriginal
2025-01-31 10:51:101011parcourir

How to Implement a Many-to-Many Relationship with Additional Properties in EF Core?

Utilisez la table associée dans EF Core pour créer une relation multi-à-manifeste

scène

Supposons que nous ayons le modèle de données suivant:

Configurer associé à l'API CLUENT
<code class="language-csharp">public class Member
{
    public int MemberID { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public virtual ICollection<MemberComment> MemberComments { get; set; }
}

public class Comment
{
    public int CommentID { get; set; }
    public string Message { get; set; }
    public virtual ICollection<MemberComment> MemberComments { get; set; }
}

public class MemberComment
{
    [Key, Column(Order = 0)]
    public int MemberID { get; set; }
    [Key, Column(Order = 1)]
    public int CommentID { get; set; }
    public virtual Member Member { get; set; }
    public virtual Comment Comment { get; set; }
    public int Something { get; set; }
    public string SomethingElse { get; set; }
}</code>

Malheureusement, le noyau de Framework Entity (EF Core) ne prend pas en charge l'utilisation d'une table de connexion personnalisée pour créer une relation multi-à-mortitiple. EF Core crée et gère automatiquement la table de connexion interne pour le rendre incapable d'accéder.

Alternative: créez deux paires de multi-relations

Pour utiliser un tableau de connexion avec des attributs supplémentaires (tels que

), nous devons établir deux-et-relation-relation:

MemberComment (Le segment de code est le même que l'entrée, le duplicate ici est omis)

Utiliser Association

Maintenant, nous pouvons effectuer diverses opérations sur ces entités:

Obtenez le commentaire du membre

    Obtenez les membres avec des commentaires
  • Filtrez l'attribut dans la table de connexion
  • Créer et gérer la relation entre les entités
  • Supprimer la relation et l'entité
  • requête
Gestion des relations

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn