2

我正在尝试将 XML 字符串转换为 XML 对象以遍历其属性和子节点。


常规 C# 中的类似内容:http: //msdn.microsoft.com/en-us/library/system.xml.xmldocument.loadxml.aspx

但是,Script# 的 System.Xml 库与 .Net 的库不同,我无法实例化新的 XmlDocument(没有公共构造函数)。


或者像这样使用 jQuery: 如何使用 jQuery 解析 XML?

但是我不知道如何在 ScriptSharp 的 jQuery 中调用非静态 ParseXml(string) 函数。

编辑:

使用 ParseXml 函数:

XmlDocument doc = jQuery.Instance.ParseXml(objDictionaryItem.Body);

但我在 WebKit 中得到错误:

$p1: "对象函数 (a,b){return new c.fn.init(a,b)} 没有方法 'parseXml'"


有什么想法吗?

4

2 回答 2

1

很简单:

XmlDocument xmlDoc = XmlDocumentParser.Parse(@"<note>
                                                <to>Tove</to>
                                                <from>Jani</from>
                                                <heading>Reminder</heading>
                                                <body>Don't forget me this weekend!</body>
                                               </note>");
于 2012-12-04T15:01:29.793 回答
0

让它以最简单的方式工作:)

根据这篇文章:https : //stackoverflow.com/a/649655/1809564 我可以将简单的 jQueryObject (var) 视为 XML 文件,只要它格式正确。

因此,如果我的 objDictionaryItem.Body 变量是格式良好的 XML 字符串,如下所示:

<ItemBody>
    <Key>132515840</Key>
    <Revision>1</Revision>
    <Name>Line</Name>
    <TestParameters>
        <TestParameterKey Key="132646912" DisplayString="Success">Success</TestParameterKey>
        <TestParameterKey Key="132646913" DisplayString="Downstrea">Downstream</TestParameterKey>
        <TestParameterKey Key="132646914" DisplayString="Upstream">Upstream</TestParameterKey>
        <TestParameterKey Key="132646915" DisplayString="Attenuation">Attenuation</TestParameterKey>
    </TestParameters>
</ItemBody>

我可以简单地使用它来解析它:

jQueryObject xmlDoc = jQuery.FromObject(objDictionaryItem.Body);
Script.Alert(xmlDoc.Find("Revision").GetText());

并使用此处描述的相同 jQuery 方法:http ://www.switchonthecode.com/tutorials/xml-parsing-with-jquery

于 2012-11-08T17:12:11.567 回答