【发布时间】:2017-03-03 07:17:32
【问题描述】:
我们先来看代码块;
发送json数据的控制器函数
[HttpGet]
public ActionResult LoadCourseForDataTable()
{
using (var dd = new DBContext())
{
var data = dd.Courses.ToList();
return Json(new {data = data}, JsonRequestBehavior.AllowGet);
}
}
这个块从上面的代码块中获取json数据;
<script>
$(document).ready(function () {
$('#CourseTable').DataTable({
"ajax": {
"url": "/Course/LoadCourseForDataTable",
"type": "GET",
"datatype": "json",
},
"columns": [
{ "data": "CourseID", "autoWidth": true },
{ "data": "Title", "autoWidth": true },
{ "data": "Credits", "autoWidth": true },
{ "data": "DepartmentID", "autoWidth": true },
]
});
});
</script>
必须在客户端服务器上加载的所有库完全完成并正确加载。他们在这个问题上没有问题。
服务器响应是 500 内部错误
这里是详细的异常;
ObjectContext 实例已被释放,不能再用于需要连接的操作。
我认为一切都是真的,但我有一个有趣的问题。你能帮助我吗?谢谢你 。 . .
【问题讨论】:
-
500 Internal Server Error)表示服务器上的代码正在抛出异常。使用您的浏览器工具(网络选项卡)检查响应,该响应将为您提供错误的详细信息。 -
服务器也会给出相当详细的错误信息。错误是什么?
-
编辑了问题。请检查它。
-
删除
using语句,或将return Json()移到它后面。 -
尝试使用带有
Select方法的投影仅返回必填字段。还要确保Course的属性是虚拟的。
标签: asp.net json asp.net-mvc