2013-04-22 103 views
2

我试图初始化我的Kendo ui网格。我可以使用视图对象 填充它,但是当我尝试以Json格式(即移动到下一页时)进行操作时,我得到的屏幕显示的是json结果而不是我的视图。Kendo ui Grid显示json而不是网格Asp .net剃须刀

这里的控制器代码:

public class CampaignsController : Controller 
    { 
     // 
     // GET: /Campaigns/ 


     [HttpGet] 
     public ActionResult Index() 
     { 
      return View(GetAllCampaigns()); 
     } 


     public ActionResult Campaigns_Read([DataSourceRequest] DataSourceRequest request) 
     { 
      DataSourceResult result = GetAllCampaigns().ToDataSourceResult(request); 
      return Json(result, JsonRequestBehavior.AllowGet);   
     } 


     private static IEnumerable<NH_Campaign> GetAllCampaigns() 
     { 
      List<NH_Campaign> result = null; 
      if (MBPDataAccess.Instance.GetAll(out result)) 
      { 
       return result; 
      } 
      return new List<NH_Campaign>(); 
     } 

和CSHTML是:

@model IEnumerable<MBP.NH_Campaign> 

<h2>View1</h2> 


@(Html.Kendo().Grid(Model) 
     .Name("CGrid") 
     .Columns(columns => 
      { 
       columns.Bound(p => p.CampaignID).Title("Id"); 
       columns.Bound(p => p.CampaignName).Title("Name"); 
       columns.Bound(p => p.ClickUrlC2C_OFF).Title("Click URL"); 
       columns.Bound(p => p.PlatformID).Title("Platform ID"); 
      }) 
     //.Groupable() 
     .Pageable() 
     //.Sortable() 
     //.Filterable() 
     .DataSource(dataSource => dataSource.Ajax().PageSize(2).Read(read => read.Action("Campaigns_Read", "Campaigns")) 
    )); 

Index行动时,页面加载的伟大工程被称为,但是当我尝试移动到下一页Camapigns_Read行动被调用,但我得到一个带有json结果的空白页面。我在这里错过了什么?

编辑:我想在服务器端

+0

你试图做你的寻呼客户端或服务器端?如果客户端需要将以下内容添加到您的DataSource中:.ServerOperation(false) – 2013-04-22 09:51:27

回答

2

得到它进行分页,

的问题是,认为必须首先进行初始化,用相同的控制器名称 - 这个可恶的命名约定:), 我的解决方案是

 public ActionResult Index() 
     { 
      return View(); 
     } 

     [HttpPost]  
     public ActionResult Index([DataSourceRequest] DataSourceRequest request) 
     { 
      DataSourceResult result = GetAllCampaigns().ToDataSourceResult(request); 
      return Json(result, JsonRequestBehavior.AllowGet);   
     } 
+0

嗨,briler。我面临同样的问题。尝试与您的答案,但我只得到一个空网格。你能帮忙吗? – 2016-12-15 09:56:30

+0

@AakashThakur - 当然,我可以尝试,请分享您的代码,我会看看 – briler 2017-01-04 11:38:45

+0

我解决了它。无论如何感谢您的关心。 – 2017-01-04 11:57:19