0

我有一个ListView并且我使用 的SelectMethodListView填充它。我希望将过滤器应用于从DropDownList. 我面临的问题是我不能DataBind()这样做,ListView因为SelectMethod那是用途。

所以我想我会一直改变它而DataBind()不是使用SelectMethod(更好吗?)。然后我面临的问题是我的方法是抓取[RouteData]。现在我正在将其[RouteData]作为我的方法的参数。请看下文。

   public IQueryable<Product> GetProducts([RouteData] string categoryName, , [RouteData] string brandName, [RouteData] string subCatName)
{
       //Do stuff
}

下面是列表视图

   <asp:ListView ID="productList" runat="server"
     DataKeyNames="ProductID"
     ItemType="E_Store_Template.Models.Product"
     SelectMethod="GetProducts">
       // do stuff 
</asp:ListView>

如何使用DataBind()并仍然获取[RouteData]来自 URL?还是我必须使用 QueryString 来执行此操作?

4

1 回答 1

0

我能够使用下面的代码获取路线数据。这使我能够获取该数据并使用 Databind() 而不必使用 select 方法来获取该数据。

Convert.ToString(Page.RouteData.Values["categoryName"]);



Convert.ToInt32(Page.RouteData.Values["scID"]);
于 2013-03-08T20:20:16.530 回答