只有當我直接傳遞模型時,我才能填充網格中的項目。如果我試圖獲得Json數據,我不能。ASP.NET MVC劍道網格
這裏是我的控制器:
namespace MVC_Test1.Controllers
{
public class StudentsController : Controller
{
private ContosoUniversityEntities db = new ContosoUniversityEntities();
public ActionResult Index()
{
db.Configuration.ProxyCreationEnabled = false;
return View(db.students.ToList());
}
public ActionResult Read([DataSourceRequest] DataSourceRequest request)
{
using (var northwind = new ContosoUniversityEntities())
{
IQueryable<student> students = northwind.students;
DataSourceResult result = students.ToDataSourceResult(request);
return Json(result);
}
}
}
}
如果我有這種說法電網工程,並顯示所有項目:
@model MVC_Test1.Models.student
@{
ViewBag.Title = "Index";
}
<h2>Index</h2>
@*@(Html.Kendo().Grid(Model)
.Name("grid")
.DataSource(dataSource => dataSource
.Ajax()
.ServerOperation(false)
)
.Columns(columns =>
{
columns.Bound(p => p.FirstName);
columns.Bound(p => p.LastName);
})
)*@
但如果我嘗試從JSON讀它不起作用。它顯示一個空格子。
@(Html.Kendo().Grid<MVC_Test1.Models.student>()
.Name("Grid")
.Columns(columns =>
{
columns.Bound(p => p.FirstName);
columns.Bound(p => p.LastName);
})
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("Read", "Students"))
)
)
我確定我做錯了什麼,但我弄不明白。感謝您的幫助。
這可能是因爲您使用'IQueryable'而不是'List' – CSharper 2014-10-10 17:55:08
您是否在瀏覽器控制檯中看到錯誤?您的請求是否觸及了該操作? – 2014-10-10 18:14:47
我已更改爲使用列表,但仍然沒有數據。沒有錯誤,是的,它是擊中行動,我看到它正在檢索數據,但列表仍然是空的......這是非常奇怪的 – 2014-10-12 05:34:44