asp.net-mvc - 剑道 UI 不加载数据
问题描述
我正在使用 Kendo UI(Telerik UI for ASP.NET MVC R3 2018)并尝试将数据加载到其中,但网格似乎只显示没有数据的标题列。我也尝试过调试,但我不知道问题出在哪里。我也试过这个线程 ,但它并没有解决我的问题。以下是我所做的,我希望网格能够显示数据。
模型
public partial class PlacementType
{
public byte Id { get; set; }
[Display(Name = "Placement Name")]
public string PlacementName { get; set; }
[DataType(DataType.Date)]
[Display(Name = "Date Created")]
public DateTime? DateCreated { get; set; }
[Display(Name = "Created By")]
public string CreatedBy { get; set; }
public string Description{get; set;}
}
看法
@(Html.Kendo().Grid<PlacementType>()
.Name("Grid")
.Columns(columns =>
{
columns.Bound(c => c.PlacementName);
columns.Bound(c => c.DateCreated);
columns.Bound(c => c.CreatedBy);
columns.Bound(c => c.Description);
}
)
.HtmlAttributes(new { style = "height: 550px;" })
.Scrollable()
.Groupable()
.Sortable()
.Pageable(pageable => pageable.Refresh(true).PageSizes(true))
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("Index", "PlacementType"))
.PageSize(20)
)
)
控制器动作
public ActionResult Index()
{
List<PlacementType> types = db.PlacementTypes.ToList();
return View(types);
}
解决方案
你的控制器应该有一个返回Json
结果的方法。
例如
public JsonResult GetPlacementTypes()
{
var types = db.PlacementTypes.ToList();
return Json(types, JsonRequestBehavior.AllowGet);
}
并更新您的视图以使用此方法。(假设您的控制器名为“PlacementTypeController”)
.Read(read => read.Action("GetPlacementTypes", "PlacementType"))
推荐阅读
- azure-functions - 在特定日期和时间运行的 Azure 函数
- c++ - 分段错误:在 DrawElementsCall 上出现 11
- java - 如何在 Recyclerview 适配器类中调用主要活动方法
- javascript - 创建具有多个基本 url 的 Javascript API 类
- node.js - 如何知道是否存在一个名为“A”的顶点,其中包含数据?
- mongodb - 如何制作 sum(field)-sum(field2) 并获得所有文档的单个结果
- javascript - 如何检查是否在php中检查了span od xheckbox?
- c - 清除分配给C中字符串的内存?
- tfs - Azure devops 管道初始化作业失败并显示错误消息“#[error]bad content type”
- c# - Treeview - 在放置在 NodeMouseClick 事件上的消息弹出窗口上单击取消时无法恢复先前的选择