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
Libérer: 2025-01-31 10:51:10
original
992 Les gens l'ont consulté

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
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; }
}
Copier après la connexion

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 de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal