ASP.NET ObjectDataSource SelectParameters CookieParameter问题
题
如果我的cookie设置如下:Response.Cookies(" Employees")(" 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 [&quot; UserId&quot;]。DefaultValue = Response.Cookies [&quot; Employees&quot;] [&quot; UserID&quot;]
那里可能存在语法错误。
其他提示
您可以创建自定义控件来解决此问题。 Kevin Isom的博客有博客文章。
自定义参数数据源
不隶属于 StackOverflow