J'ai 2 tables A et B qui ont une relation plusieurs à plusieurs. J'utilise des répéteurs imbriqués pour afficher les données dans une page Web. Mon problème est, comment puis-je écrire une requête ObjectQuery ou IQueryable qui retourne les lignes parentes dans A et les lignes enfant dans B afin que je puisse les utiliser comme sources de données pour mes répéteurs interne et externe. J'ai le code que j'ai écrit ci-dessous mais je ne suis pas sûr que ce soit correct ou même proche.Le chargement d'un répéteur imbriqué avec les données de 2 Entity Framework Requêtes
<asp:Repeater ID="A" runat="server"><br/>
<ItemTemplate><br/>
<h2 class="Information"><br/>
<%# Eval("Name") %> (<%#Eval("Abbreviation")%>)<br/>
</h2><br/>
<hr/><br/>
<p> <%# Eval("Description")%> </p><br/>
<asp:Repeater ID="B" runat="server"><br/>
<ItemTemplate><br/>
<li><br/>
<a href="..Pages/Category.aspx?<%# Eval("ID") %>"><br/>
<%# Eval("Name") %><br/>
</a><br/>
</li> <br/>
</ItemTemplate><br/>
</asp:Repeater><br/>
</ItemTemplate><br/>
</asp:Repeater>
Ceci est mon C# codebehind jusqu'à présent:
using (DBEntities connection = new DBEntities())
{
ObjectQuery<A> As = connection.A;
IQueryable<A> aQuery = from a in As
orderby a.SortOrder
select a;
TechnologyRepeater.DataSource = As;
DataBind();
}
Que voulez-vous dire par: « Quelle est la meilleure façon de le faire avec la combinaison des données dans le cadre de l'entité? » Avez-vous l'association dans votre modèle? Si non, pourquoi pas? –
Mon modèle était un peu déroutant à cause de la façon dont j'ai eu ma participation plusieurs-à-plusieurs. J'ai corrigé le problème et maintenant le plusieurs-à-plusieurs apparaît sans la table de jonction comme il se doit. J'ai alors fait ce que Brian a dit entrer">. Ai-je besoin de faire quelque chose dans mon IQueryable ou d'ajouter un autre Iérable pour B pour obtenir les données? Je ne sais pas comment je ferais un "> car Bs n'existe pas dans mon système. –