Bootstrap-Table在MVC中接收记录却无法显示数据求助
问题解决方法
核心问题分析
页面能显示2条记录说明接口返回了正确数量的数据集,但字段位置显示短横线,说明前端无法正确映射到ViewModel的属性,大概率是以下两个原因:
- ASP.NET MVC默认限制GET请求获取Json数据,导致返回内容异常
EmployeeViewModel的属性未设置公开的访问器(getter)
具体修复步骤
1. 允许GET请求获取Json结果
修改控制器中的GetEmployees方法,在返回Json时添加JsonRequestBehavior.AllowGet(针对ASP.NET MVC框架):
public JsonResult GetEmployees() { List<EmployeeViewModel> employees = new List<EmployeeViewModel>() { new EmployeeViewModel { EmployeeName = "Steve", PostalCode = "90210" }, new EmployeeViewModel { EmployeeName = "Jane", PostalCode = "41111" } }; // 添加AllowGet允许GET请求获取Json return Json(employees, JsonRequestBehavior.AllowGet); }
如果是ASP.NET Core框架,无需JsonRequestBehavior.AllowGet,但需确保配置了正确的Json序列化选项,同时检查属性访问器。
2. 确保ViewModel属性可访问
检查EmployeeViewModel的定义,确保属性是public且包含get访问器:
public class EmployeeViewModel { public string EmployeeName { get; set; } public string PostalCode { get; set; } }
若属性没有get方法,Json序列化时无法读取属性值,前端自然拿不到数据。
3. 验证返回结果
通过浏览器F12的网络面板查看/Home/GetEmployees的返回内容,确认是否包含正确的EmployeeName和PostalCode字段值。如果返回的Json结构正确,前端bootstrapTable就能正常映射显示。
内容的提问来源于stack exchange,提问作者Steve
相关产品推荐
相关产品推荐

