我从服务器返回这JSON,jQuery的数据表,但它会返回错误:序列化类型错误的对象时检测到循环引用?
System.InvalidOperationException: A circular reference was detected while serializing an object of type 'System.Reflection.RuntimeModule'.
at WebServices.himher.getUsers1(Int32 iDisplayLength, Int32 iDisplayStart, Int32 iSortCol_0, String sSortDir_0, String sSearch)
的.cs代码:
public void getUsers1(int iDisplayLength, int iDisplayStart, int iSortCol_0, string sSortDir_0, string sSearch)
{
try
{
basicoperation bop = new basicoperation();
DataTable dt;
dt = bop.getUsers(iDisplayLength, iDisplayStart, iSortCol_0, sSortDir_0, sSearch); // fetching users
dt.TableName = "usersDT1";
//int iTotalRecords=0;
//int iTotalDisplayRecords= 0;
var retObj = new
{
iTotalRecords= 20,
iTotalDisplayRecords= 10,
aaData= dt
};
//string json = JsonConvert.SerializeObject(dt);
JavaScriptSerializer js = new JavaScriptSerializer();
Context.Response.Write(js.Serialize(retObj));
}
catch (Exception ex)
{
throw ex;
}
}
异常消息非常清晰。您的数据模型中有一个无法序列化的循环引用。使DTO成为仅应该到达视图的仅选择数据,而不是整个数据表 – Alex