SelectCommand construit dynamiquement pour GridView SqlDataSource dans asp.net
-
08-07-2019 - |
Question
Je travaille avec un GridView qui utilise un élément SqlDataSource qui ressemble à ceci:
<asp:SqlDataSource ID="InventoryDB" runat="server" ConnectionString="<%$ ConnectionStrings:InventoryConnectionString %>"
SelectCommand="SELECT [Server], [Customer] FROM [Website] WHERE [Owner] = 'someOwner'">
</asp:SqlDataSource>
J'aimerais remplacer la partie "someOwner" de la clause where par quelque chose de dynamique, comme ceci:
SelectCommand="SELECT [Server], [Customer] FROM [Website] WHERE [Owner] = '<%# UserManager.getCurrentUser(Request) %>'"
Mais lorsque je le fais, il semble utiliser le texte littéral de la clause WHERE au lieu d’évaluer mon appel de fonction, ce qui bien sûr ne fonctionne pas. Quelle est la bonne façon de faire cela?
La solution
La bonne façon de gérer cela consiste à utiliser des paramètres. La la documentation MSDN est assez complète dans ce domaine. montrant comment les utiliser.
Les paramètres utilisateur avec des contrôles de source de données sont plus détaillés et informations accessibles sur l'utilisation des paramètres.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow