asp.net mvc выберите изменить перенаправить на действие - PullRequest
2 голосов
/ 16 июня 2010

Я правильно передаю имя действия из контроллера в класс подкачки и , а затем с помощью списка выбора я хочу перенаправить на это действие .в этот момент он добавляется к текущему URL-адресу. Мне нужен правильный способ перенаправления на контроллер действия manageUser, используя список выбора ниже

Что мы должны иметь здесь в Model.COntroller.ControllerName / ActionName / или Just ActionName

 <select id="paging" onchange="location.href='<%= Model.Controller %>'+this.value">

     <% for (int i = 1; i <= Model.TotalPages; i++)
      {  %>
         <option id=<%=i %>><%=i %></option>
     <% } %>
    </select>


public class PaginatedList<T> : List<T>
{

    public string Controller { get; private set; }

    public PaginatedList(IQueryable<T> source, int pageIndex, int pageSize,string Cont)
    {
        Controller = Cont;                   // here is the controller 

    }
  }

Controller
    public ActionResult ManageUser(int? page)
    {
        const int pageSize = 5;
        var AllUser = UserRepository.GetAllUser();
        var paginatedUsers = new PaginatedList<Users>(AllUser, page ?? 1, pageSize,"ManageUser/Page/");

        return View(paginatedUsers);
    }

1 Ответ

7 голосов
/ 16 июня 2010

Я бы, вероятно, установил значение выбора в URL, на который вы хотите перенаправить.Таким образом, вы все еще можете использовать встроенные помощники для генерации ваших URL.Как то так:

<select id="paging" onchange="location.href=this.value">
 <% for (int i = 1; i <= Model.TotalPages; i++)
  {  %>
     <option value="<%=Url.Action("ActionName", "ControllerName", new { page = i })%>"><%=i %></option>
 <% } %>
</select>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...