首页 新闻 会员 周边

怪事天天有,这个不一般

1
[已解决问题] 解决于 2012-03-27 16:40

使用AjaxPro框架,进行异步加载服务器数据。

在标记为AjaxPro.AjaxMethod的方法体中,将数据格式化为JSON字符串。

其中,本想使用String.Format()方法或StringBuilder.AppendFormat(),将数据进行格式化处理,但每次循环第一次执行到此句,即跳出方法。但使用“+”号拼接字符串却可正常执行。

求高手解惑!

hardersen的主页 hardersen | 菜鸟二级 | 园豆:206
提问于:2012-03-27 16:17
< >
分享
最佳答案
0
string formatResult="{'en':'{0}','rmd':'{1}','cc':'{2}','cn':'{3}'},";

换为:

string formatResult="{{'en':'{0}','rmd':'{1}','cc':'{2}','cn':'{3}'}},";

试试,{}要转义的

奖励园豆:5
artwl | 专家六级 |园豆:16736 | 2012-03-27 16:24

果然,非常感谢!

但是,还没遇到这样的转意呢。能否详细说说,多谢赐教!

hardersen | 园豆:206 (菜鸟二级) | 2012-03-27 16:29

@TigerSpringLiu: 这个只在类似{0}这样的参数替换时会发生,我也是前段时间碰到了这个问题

artwl | 园豆:16736 (专家六级) | 2012-03-27 16:30

@TigerSpringLiu: 还有要注意的是,如果你替换的内容 portslist[i].PortCN中含有{或}也要作转义处理,不然会报错的

artwl | 园豆:16736 (专家六级) | 2012-03-27 16:32

@artwl: 嗯,很有道理,非常感谢!

hardersen | 园豆:206 (菜鸟二级) | 2012-03-27 16:34
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册