下面是我的控制器,它从sql db中读取数据,然后尝试将结果编码为JSON并将数据发送回我的gridview.js
public JsonResult writeRecord()
//public string writeRecord()
{
Response.Write("Survey Completed!");
SqlConnection conn = DBTools.GetDBConnection("ApplicationServices2");
string sqlquery = "SELECT Q1, Q2, Q3, Q4, Improvements, Comments FROM myTable";
SqlDataAdapter cmd = new SqlDataAdapter(sqlquery, conn);
DataSet myData = new DataSet();
cmd.Fill(myData, "myTable");
conn.Open();
conn.Close();
return Json(myData, JsonRequestBehavior.AllowGet);
//return myData.GetXml();
}
这就是问题所在,使用上面的代码,我在执行gridview.js时得到了没有数据的gridview表,但是如果我直接访问控制器的方法是这样的
http://localhost:55099/GridView/writeRecord
我得到这个错误,
序列化类型为’System.Globalization.CultureInfo’的对象时,检测到循环引用。 说明:
执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其在代码中起源的更多信息。 异常详细信息:
System.InvalidOperationException:在序列化类型为System.Globalization.CultureInfo的对象时检测到循环引用。
有人可以帮忙吗..
我使用以下工具对JSON进行序列化和反序列化:
http://james.newtonking.com/pages/json-
net.aspx
它非常易于使用且非常轻巧。
序列化时,我们使用以下选项:
JsonConvert.SerializeObject(myObject, Formatting.Indented,
new JsonSerializerSettings {
ReferenceLoopHandling = ReferenceLoopHandling.Ignore
})
它忽略循环引用。
来自newtonking的json.net也非常快。
其他选项是使用DTO,并通过Diver提到的Automapper映射它们。
编辑:我怀疑您的商店是错误的:
var store = Ext.create('Ext.data.JsonStore', {
storeId: 'myData',
reader: new Ext.data.JsonReader({
root: 'myTable',
fields: [{ name: 'Q1', type: 'int' },
{ name: 'Q2', type: 'int' },
{ name: 'Q3', type: 'int' },
{ name: 'Q4', type: 'int' },
{ name: 'Q5', type: 'int' },
{ name: 'Improvements', type: 'string' },
{ name: 'Comments', type: 'string'}]
}),
proxy: {
type: 'json',
url: 'GridView/writeRecord'
}
});
问题内容: 我有关于通函的问题。 我有Rest Webservices,它会将对象返回到前端,问题是当我尝试返回具有多个引用的对象时,结果是我得到一个无限的响应,该响应会生成 这些对象是由Hibernate Code Generation自动生成的,我需要在后端使用循环引用,我只需要删除它,然后再使用Jackson将信息发送到前端即可。 控制器方法标头为: 我没有做任何明确的转换为Json的事情,
问题内容: 有岗位这里,询问如何通过返回EF4CTP5序列化对象时,解决循环引用错误。不久前,我在WCF Web表单项目中遇到了同样的问题。 我能够在WCF / Web窗体项目和MVC3项目中“解决”此问题。我认为什么类型的项目都不重要,因为这似乎是EF序列化的“事物”。 我通过在ObjectContext构造函数中禁用ProxyCreation来解决此问题,如下所示: 我的问题是:有人可以解释为
在我的应用程序中,我们使用多个数据源,因此我们有多个数据库配置(会话工厂)。在我们的本地(whindows机器)上一切正常,但当我们将war文件部署到Unix时,应用程序失败,出现以下异常: 组织。springframework。豆。工厂BeanCreationException:创建名为“cpnRepository”的bean时出错:自动连线依赖项的注入失败;嵌套的异常是org。springfr
问题内容: 我开始在一个小型的足球联赛管理网站上工作(主要是出于学习目的),我无法确定Django模型的关系。为了简单起见,假设我有两种类型的对象-玩家和团队。自然,一个玩家属于一个团队,因此在Player模型中就是一个ForeignKey(Team)。所以我去: 然后,我希望每个团队都有一个队长,该队长将是其中一名球员,因此在团队模型中将成为一名ForeignKey(Player)。但这会产生循
问题内容: 如果我从json.net获得序列化的JSON,如下所示: 我想让淘汰赛在FooList上输出foreach,但是我不确定如何继续,因为$ ref东西可能会抛出东西。 我在想解决方案将以某种方式通过不使用以下方式强制将所有Foos呈现在FooList中: 但这似乎很浪费。 问题答案: 从服务器接收的json对象包含循环引用。在使用对象之前,您必须首先 从对象中删除所有属性,这意味着`$r
我有一个“fileUpload”组件,我正在将它传递到我的React应用程序的表单中。 我希望能够为for循环中的每个输入元素设置唯一的ref,然后将该ref传递给delete按钮以删除该文件。 FileUploadComponent FormComponent //在不使用FileUploadComponent和手动设置/传递ref的情况下工作 //尝试自动分配ref并将其传递给delete按钮