XML属性中的JSON

Sam*_*ica 2 javascript c# xml json

我必须将一些数据从C#模块传递到Javascript模块。

现在,有一个我不控制的中间人模块,最终会做的是调用external(c#)模块,并返回一个xml结构,其中来自c#模块的数据位于XML属性内。

我试图放入JSON字符串, "\/Date(1350323947917)\/"

来自

    DateTime dt = DateTime.Now;

    JavaScriptSerializer serailzer = new JavaScriptSerializer();
    string dateTimeString = serailzer.Serialize(dt);
Run Code Online (Sandbox Code Playgroud)

而且它不适合作为有效XML的属性。

我可以尝试做的是在字符串末尾删除引号,但是我不确定这是否会使它成为无效的JSON。

我的问题是,我应该尝试继续执行此JSON路由,还是缺少其他陷阱?

编辑: 我想重申,生成XML的不是我的程序。

Eve*_*ert 5

JSON必须为UTF-8,因此只要您使用UTF-8编码的XML,它就可以使用。只要确保您正确地将json转义以用于属性即可。你需要躲避只有四个字符<>&",被转义为&lt;&gt;&amp;&quot;

CDATA有问题。您仍然必须转义某些序列,并且因为json和xml都应该是有效的UTF-8,所以不使用CDATA时的风险较小。您想要的是SGML所谓的PCDATA,这正是标准文本属性或xml nodeValue的含义。

因此,您的问题的答案就是简单地将容器的数据(无论可能是什么)转义出去。在这种情况下,它是xml。