由于SelectMethod,无法绑定到ListView
本文关键字:绑定 ListView SelectMethod 由于 | 更新日期: 2023-09-27 18:02:47
我有一个ListView
,我使用ListView
的SelectMethod
来填充它。我希望将过滤器应用于从DropDownList
返回的数据。我面临的问题是,由于使用SelectMethod
,我不能在这个ListView
上DataBind()
。
所以图我将改变这一点和DataBind()
,而不是使用SelectMethod
(这更好吗?)。然后我面临的问题是我的方法是抓取[RouteData]
。现在我正在抓取[RouteData]
作为我的方法的参数。请参阅下文。
public IQueryable<Product> GetProducts([RouteData] string categoryName, , [RouteData] string brandName, [RouteData] string subCatName)
{
//Do stuff
}
下面是ListView
<asp:ListView ID="productList" runat="server"
DataKeyNames="ProductID"
ItemType="E_Store_Template.Models.Product"
SelectMethod="GetProducts">
// do stuff
</asp:ListView>
我如何使用DataBind()
,仍然从URL抓取[RouteData]
?或者我必须使用QueryString来做到这一点?
我可以使用下面的代码获取路由数据。这使我能够获取该数据并使用Databind(),而不必使用selectmethod来获取该数据。
Convert.ToString(Page.RouteData.Values["categoryName"]);
Convert.ToInt32(Page.RouteData.Values["scID"]);