Вопрос ASP.NET ObjectDataSource SelectParameters CookieParameter
Вопрос
Если мой файл cookie настроен следующим образом:Response.Cookies("Сотрудники")("UserID") = 43
Как получить это значение из ObjectDataSource SelectParameters CookieParameter?
<asp:ObjectDataSource ID="odsProducts" runat="server" TypeName="MyCompany.Products" SelectMethod="GetAll">
<SelectParameters>
<asp:CookieParameter CookieName="????" Name="UserID" Type="Int32" />
</SelectParameters>
</asp:ObjectDataSource>
Я так понимаю, мне нужно будет сделать что-то подобное?
<asp:ObjectDataSource ID="odsProducts" runat="server" TypeName="MyCompany.Products" SelectMethod="GetAll">
<SelectParameters>
<asp:CookieParameter CookieName="Employees.UserID" Name="UserID" Type="Int32" />
</SelectParameters>
</asp:ObjectDataSource>
Решение
Не идеально, но вы можете установить параметр ObjectDataSource DefaultValue в коде-бедой ODSProducts.selectParameters ["userId"]. DefaultValue = response.cookies ["Сотрудники"] ["userId"
там может быть синтаксическая ошибка.
Другие советы
Для решения этой проблемы вы можете создать собственный элемент управления.В блоге Кевина Айсома есть запись.
Пользовательский параметр для источника данных
Не связан с StackOverflow