我试图通过表单提交(多部分编码)将json字符串发布到aspx页面,并根据反序列化的json字符串发回响应。 (我真的需要通过表单提交来做到这一点。没有ajax)
我不知道为什么这不起作用,但每次我尝试使用简单的字符串替换来替换json字符串中带双引号的单引号。它似乎没有发生。
以下是我所做的总结。
这是JSON字符串,
[["\n 22.02 13:15 \n ","\n \n \n \n ","\n \n \n \n ","\n \n \n "," \n Vereina\n ","\n \n ","\n 35 000\n ","\n 24.03.11\n ","\n Taiwan \n ","\n \n ","\n \n "]]
要通过表单数据发送,我将所有“引号”替换为“引号”,
[['\ n \ n22.02 13:15 \ n','\ n \ n \ n \ n','\ n \ n \ n \ n','\ n \ n \ n','\ n Vereina \ n','\ n \ n','\ n 35 000 \ n','\ n 24.03.11 \ n','\ n台湾\ n','\ n \ n','\ n \ n']]
在服务器端,我正在替换新行,因为我不需要它们,
[[' 22.02 13:15 ',' ',' ',' ',' Vereina ',' ',' 35 000 ',' 24.03.11 ',' Taiwan ',' ',' ']]
然后我在上面使用C#字符串替换方法.Replace(“'”,“\”“),我得到的是
[[\" 22.02 13:15 \",\" \",\" \",\" \",\" Vereina \",\" \",\" 35 000 \",\" 24.03.11 \",\" Taiwan \",\" \",\" \"]]
我在MS Visual Studio的快速监视窗口中观察到这一点,同时在调试代码时也是如此。
答案 0 :(得分:6)
调试器显示字符串,因为它们显示为C#字符串文字。这就是引号被转义的原因。但是,字符串不受影响。
您可以通过在某处打印字符串轻松验证。
快速演示:
在调试窗口(紫色)中,字符串显示带有转义的引号(并由quoation标记包围,从而使其成为C#字符串文字),而控制台中的输出(红色)显示实际内容。