Невозможно привязать данные к ListView из-за SelectMethod
У меня есть ListView
и я использую SelectMethod
из ListView
заселить это. Я ищу, чтобы применить фильтры к данным, возвращенным из DropDownList
, Проблема, с которой я сталкиваюсь - я не могу DataBind()
на этом ListView
из-за SelectMethod
это использует.
Итак, я бы изменил это и 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()
и до сих пор захватить [RouteData]
с URL? Или я должен использовать QueryString, чтобы сделать это?
1 ответ
Я смог получить данные о маршруте с помощью кода ниже. Это позволило мне получить эти данные и использовать Databind() вместо необходимости использовать метод select для получения этих данных.
Convert.ToString(Page.RouteData.Values["categoryName"]);
Convert.ToInt32(Page.RouteData.Values["scID"]);