Динамически построенный SelectCommand для GridView SqlDataSource в asp.net
-
08-07-2019 - |
Вопрос
Я работаю с GridView, который использует элемент SqlDataSource, который выглядит следующим образом:
<asp:SqlDataSource ID="InventoryDB" runat="server" ConnectionString="<%$ ConnectionStrings:InventoryConnectionString %>"
SelectCommand="SELECT [Server], [Customer] FROM [Website] WHERE [Owner] = 'someOwner'">
</asp:SqlDataSource>
Я бы хотел заменить часть someOwner в предложении where чем-то динамическим, например, так:
SelectCommand="SELECT [Server], [Customer] FROM [Website] WHERE [Owner] = '<%# UserManager.getCurrentUser(Request) %>'"
Но когда я делаю это, кажется, что он использует буквальный текст предложения WHERE вместо оценки моего вызова функции, что, конечно, не работает. Как правильно это сделать?
Решение
Правильный способ справиться с этим - использовать параметры. документация MSDN довольно подробна в показывая, как их использовать.
Параметры пользователя с элементами управления источниками данных содержат некоторые более подробные и доступная информация об использовании параметров.
Не связан с StackOverflow