json格式存在的BUG?

gdmvip 2011-08-11 05:32:56

//这是后台的


//假设我的Name 变量冲数据库查询出来的数据是 ( 谢,霆"\"锋 ) 扩后里面的这个名字 赋值给Name的话,,,json就错误了,说格式错误了。这怎么解决?我自己想到了一个办法就是把数据库查询出来的数据进行加密然后变成一串英文数字,这样的话Name的值就不会存在一个有标点符号的数据了,然后有需要用到Name的值的时候再解析出来,这方法是否可行?但是这加密方法不知道在jquer里面怎么实现,在.cs的后台就会了

Response.Write(string.Format("{\"ID\":\"{0}\",\"Name\":\"{1}\"}",ID,Name));
Response.End();


...全文
149 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
gdmvip 2011-08-12
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 tomysea 的回复:]
你必须对json特殊字符转义,就像c#字符串的特殊字符“"”一样。

如果是做json转移,可以使用内置的json序列化类,位于System.Web.Script.Serialization命名空间中。


C# code


JavaScriptSerializer serializer = new JavaScriptSerializer();
//在此定义你……
[/Quote]


字符串都是客户输入的哦,JSON 还是前两天才开始了解的呢....学起来真是有压力啊。
huangwenquan123 2011-08-11
  • 打赏
  • 举报
回复
是不是提示输入字符串的格式不正确?
之前写的那个没注意
是因为string.Format中{}代表占位符
而json格式的{}冲突了
string.Format("{\"ID\":\"{0}\",\"Name\":\"{1}\"}"
换成
StringBuilder sb = new StringBuilder();
sb.Append("{").AppendFormat("\"ID\":\"{0}\",\"Name\":\"{1}\"", id, name).Append("}");
或者
看到之前你写的那个代码
你可以用json序列化转换为json格式在输出
json序列化的话ls给了
子夜__ 2011-08-11
  • 打赏
  • 举报
回复
tomysea 2011-08-11
  • 打赏
  • 举报
回复
你必须对json特殊字符转义,就像c#字符串的特殊字符“"”一样。

如果是做json转移,可以使用内置的json序列化类,位于System.Web.Script.Serialization命名空间中。


JavaScriptSerializer serializer = new JavaScriptSerializer();
//在此定义你想序列化的对象
object o = 1;
string json = serializer.Serialize(o);
//接下来的操作

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧