如果我的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的博客有博客文章。
自定义参数数据源

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top