gpt4 book ai didi

c# - 动态显示 XML 内容

转载 作者:行者123 更新时间:2023-11-28 01:34:56 24 4
gpt4 key购买 nike

我目前正在研究一个解决方案,该解决方案可与政府托管的 WebService 一起使用(因此没有机会在这方面进行任何更改 ;-))。

我使用的方法返回一个 XML 字符串 - 到目前为止还不错。

现在的问题是:返回的 XML 可以有很多不同的结构,并且没有办法找出返回的是哪一个。没有 XSD 或任何其他可用的....

示例伪代码:

string XmlFileContent = WebService.MethodGetXMLFile(filekey)

XmlFileContent 可以例如看起来像这样:

<XML>
<Field1>sometext</Field1>
</XML>

<Table Date ="20150302" Time = "0946">
<Row>
<Field1>sometext</Field1>
<Field2>2341.5145</Field2>
</Row>
</Table>

或您能想到的任何类型的 XML...

所以问题是:是否有任何可能性或工具可以以可接受的方式显示此 XML 内容?格式化可以忽略,我只是想以比显示纯 XML 文本更好的方式显示数据。

与 WebService 一起工作的客户端是用 C# (.NET 4.5) 编写的,显示 XML 数据的技术并不重要 - 任何有帮助的都是完美的。 (也许是 HTML 或类似的东西!?)

最佳答案

只要第一个例子是错误的(不是正确的xml)如果你只想显示它,你可以尝试这样的事情。显然,您必须添加一些格式,但它比纯 XML 对用户更友好。

     [Test]
public void test()
{
var a = @"<XML>
<Field1>sometext</Field1>
</XML>";

var b = @"<Table Date ='20150302' Time = '0946'>
<Row>
<Field1>sometext</Field1>
<Field2>2341.5145</Field2>
</Row>
</Table>";

XDocument doc=XDocument.Parse(b);
PrintAllNodes(doc.Descendants());
}

private void PrintAllNodes(IEnumerable<XElement> nodes)
{
foreach (var node in nodes)
{
foreach (var xAttribute in node.Attributes())
{
Console.WriteLine(xAttribute.Name + ": " + xAttribute.Value);
}

Console.WriteLine(node.Name + " " + node.Value);
}

}

关于c# - 动态显示 XML 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28805813/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com