我有一个使用razor模型获取其数据的kendo ui网格。网格显示正确的列名称,但是,它不显示任何数据。我可以验证是否已返回数据,但网格未呈现数据。我遵循了以下示例:Link to sample,
下面是启动,控制器和cshtml页面的代码。
该项目在.NET Core 2.0上运行,并且控制器继承自Microsoft.AspNetCore.Mvc.Controller,其中示例继承自BaseController。
任何帮助表示赞赏!预先感谢。
Startup.cs-配置:
TOPIC_NAME
Startup.cs-ConfigureServices:
// Configure Kendo UI
app.UseKendo(env);
控制器:
services.AddMvc()
.AddJsonOptions(options =>
options.SerializerSettings.ContractResolver = new DefaultContractResolver());
//Add Kendo UI services to the services container
services.AddKendo();
CSHTML:
var response = _personService.LoadById(id).Result;
return View(response);
答案 0 :(得分:0)
您需要将IEnumerable指定为视图模型,然后才能像这样传递数据:
控制器操作:
public IActionResult Index()
{
var petList = new List<Pet>();
petList.Add(new Pet { Name = "Cat" });
petList.Add(new Pet { Name = "Dog" });
return View(petList);
}
Index.cshtml
@model IEnumerable<TelerikAspNetCoreApp1.Models.Pet>
<div class="row">
<div class="col-xs-18 col-md-12">
@(Html.Kendo().Grid(Model)
.Name("petgrid")
.Columns(columns =>
{
columns.Bound(p => p.Name);
})
.Pageable()
.Sortable()
.Scrollable()
.Filterable()
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(20)
)
)
</div>
</div>