questão ASP.NET ObjectDataSource SelectParameters CookieParameter
Pergunta
Se o meu cookie é definido assim: Response.Cookies ( "empregados") ( "UserID") = 43
Como faço para obter esse valor a partir de um 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>
Eu estou supondo que eu precisaria fazer algo assim?
<asp:ObjectDataSource ID="odsProducts" runat="server" TypeName="MyCompany.Products" SelectMethod="GetAll">
<SelectParameters>
<asp:CookieParameter CookieName="Employees.UserID" Name="UserID" Type="Int32" />
</SelectParameters>
</asp:ObjectDataSource>
Solução
Não é o ideal, mas você pode configurar o ObjectDataSource Parâmetro DefaultValue no código-behind odsProducts.SelectParameters [ "UserId"]. DefaultValue = Response.Cookies [ "Colaboradores"] [ "UserID"]
pode haver um erro de sintaxe lá.
Outras dicas
Você pode criar controle personalizado para resolver este problema. O blog de Kevin Isom tem uma entrada de blog.
parâmetro personalizado para uma fonte de dados
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow