Динамически построенный SelectCommand для GridView SqlDataSource в asp.net

StackOverflow https://stackoverflow.com/questions/288057

Вопрос

Я работаю с 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 довольно подробна в показывая, как их использовать.

Параметры пользователя с элементами управления источниками данных содержат некоторые более подробные и доступная информация об использовании параметров.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top