Невозможно привязать данные к 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"]);
Другие вопросы по тегам