Maison >développement back-end >C++ >Comment puis-je inclure des propriétés imbriquées dans le cadre d'entité en utilisant include ()?
Lorsque vous utilisez la méthode include () dans Entity Framework pour récupérer des objets contenant des données connexes, une limite commune consiste à manquer de prise en charge des propriétés imbriquées multi-blouses. Par exemple, supposons que vous ayez un modèle, où les applicationsrservers possèdent une application avec la collection OverrideGroup, et les applications avec des attributs d'application et de CustomVariableGroup.
Tentative initiale:
Afin d'inclure l'attribut imbriqué, vous pouvez essayer les méthodes suivantes:
Cependant, cette méthode ne remplit que l'attribut activé de l'applicationwithOverrideVariableGroup sans remplir les propriétés de l'application ou de CustomVariableGroup.
<code class="language-csharp">public IEnumerable<applicationserver> GetAll() { return this.Database.ApplicationServers .Include(x => x.ApplicationsWithOverrideGroup) .Include(x => x.ApplicationWithGroupToForceInstallList) .Include(x => x.CustomVariableGroups) .ToList(); }</code>
y compris l'attribut imbriqué dans EF 6, veuillez utiliser l'inclusion () qui accepte les expressions lambda:
<code class="language-csharp">using System.Data.Entity; query.Include(x => x.Collection.Select(y => y.Property));</code>Dans EF Core, utilisez la méthode TheNinclude pour inclure l'attribut imbriqué:
En utilisant ces méthodes, vous pouvez charger avec impatience le niveau d'attribut imbriqué dans le cadre d'entité pour vous assurer que votre objet a complètement rempli les données nécessaires.
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!