2013-09-02 3 views
0

У меня есть одна страница с GridView Devexpress, где я хочу показать все данные моей таблицы (используя Entity Framework).My DevExpress Grid не сортирует и фильтрует данные (MVC 4.0)

На первой странице загружаются все данные, однако мой Devexpress GridView не сортирует и не фильтрует. :(

Ниже мой код:

Мой контроллер

public class MenuController : Controller 
    { 
     private AcessoEntities db = new AcessoEntities(); 

     public ActionResult Index() 
     { 
      var menu = db.MENU.Include(m => m.MENU2); 
      return View(menu.ToList()); 
     } 
} 

Это мой Вид:

@Html.DevExpress().GridView(
     s => 
     { 
      s.Name = "Lista"; 
      s.KeyFieldName = "Id"; 

      s.Settings.ShowFilterRow = true; 

      s.Columns.Add("Nome"); 
      s.Columns.Add("MENU2.Nome", "Meu pai").SortOrder = DevExpress.Data.ColumnSortOrder.Ascending; 
      s.Columns.Add("Ordem_Menu", "Ordem menu"); 

     }).BindToLINQ(string.Empty, string.Empty, (s, e) => 
     { 
      var data = new Hoya.Extranet.Interface.Models.AcessoEntities(); 
      e.QueryableSource = data.MENU; 
     }).GetHtml() 

Когда я нажимаю, чтобы отсортировать или отфильтровать это просто показывает изображение «Погрузка» и ничего не происходит ...

Можно так помогите мне?

+0

Возможно, вы получили успех моего примера? –

ответ

0

Вам необходимо создать частичный вид именно для этого GridView, чтобы Grid мог обратный вызов получить данные сервера. И для этого вам нужно иметь ActionResult для этого GridView.

Так сделайте следующее:

Создать Partial View и поместите GridView код внутри.

Вы должны также определить обратный вызов путь к этому GridView, используя что-то вроде этого (внутри вашего GridView определений):

settings.CallbackRouteValues = new { Controller = "MenuController", Action = "YourPartialView" }; 

И мой личный совет, что вы должны передать данные PartialView с помощью View Model концепция.

Вы также можете увидеть хороший пример того, что здесь: http://mvc.devexpress.com/GridView/Sorting

Смежные вопросы