在C#中,如何对XML进行编码,以便在页面的JavaScript部分将其输出到JSON中
In C# how to encode XML to output it inside JSON in the JavaScript part of a page
我有一个处理程序,它上传一个KML文件并返回带有KML文件作为属性的JSON:
context.Response.Write("{'"name'":'"" + FileName +
"'",'"type'":'"" + FileType +
"'",'"size'":'"" + FileSize +
"'",'"region_id'":'"" + regionID +
"'",'"kml'":'"" + HttpUtility.HtmlEncode(xmlData) + "'"}");
正如你所看到的,我正试图用HttpUtility.HtmlEncode
对KML进行编码,但我的响应中出现了一个错误:
未捕获的异常:无效的JSON
如何在C#中对XML/KML文件进行属性编码,以便以后在JavaScript中对其进行解码
编辑#1:根据Cheeso的评论我使用的是ASP.NET,IIS 7.5 Windows 7上的.NET版本4。我的处理程序是一个ashx文件。如果我在响应中省略了KML数据(HttpUtility.HtmlEncode(xmlData)
),则响应工作正常。
编辑#2我还试着根据主持人的评论使用System.Web.Script.Serialization.JavaScriptSerializer
。我是这样用的:
System.Web.Script.Serialization.JavaScriptSerializer serializer;
context.Response.Write("{'"name'":'"" + FileName +
"'",'"type'":'"" + FileType +
"'",'"size'":'"" + FileSize +
"'",'"region_id'":'"" + regionID +
"'",'"kml'":'"" + serializer.Serialize(xmlData) + "'"}");
我仍然得到相同的"无效JSON"错误。
您想要构建JSON,对吧。。。显然,我建议使用JSON序列化程序是荒谬的。。。。然而:
string FileName = "foo.txt", FileType = "csv";
int FileSize = 1134, regionID = 12;
string xml = "<foo><bar/></foo>";
string json= new JavaScriptSerializer().Serialize(new {
name = FileName,
type = FileType,
size = FileSize,
region_id = regionID,
kml = xml
});
在大多数情况下,使用预封装的序列化程序既更方便,又对数据的边缘情况更健壮。
<
编码为<
,依此类推。这并不能帮助您将XML转换为JSON格式。你想要的是一个JavaScript编码。使用HttpUtility.JavaScriptStringEncode
http://msdn.microsoft.com/en-us/library/dd991914.aspx
相关文章:
- Javascript JSON.parse not working
- Javascript:JSON请求仅在第一次工作
- 定义this.properties或objectName.properties的javascript JSON对象
- Javascript/JSON警报返回Undefined
- 使用XPath样式访问Javascript JSON对象属性
- JavaScript JSON关联对象键和值都作为日期时间戳
- Javascript-JSON-嵌套和分组
- Javascript json返回未定义
- 无标题Javascript JSON数组->CSV导出
- Javascript JSON对象替换对象中的字符串
- Javascript/Json日期转换问题
- 使用jstl c:forEach在迭代jsp bean上创建javascript json对象
- 为什么我的JavaScript / JSON脚本不能在Internet Explorer中工作
- 将数据从 Python 发送到 Javascript (JSON)
- JavaScript Json 值追加基于相等条件
- 在设置用户后,从 JavaScript JSON 请求中获取 Web 服务 (asmx) ASP.NET Windows
- JavaScript - JSON 数据结构的构建 - 如何使用变量值更改键名
- Javascript JSON 解析和字符串化用于多级
- 如何将数据 php 更改为 javascript json
- Javascript JSON 到 Excel 文件下载