如何避免将内部xml写入XmlWriter的冗余命名空间声明?

时间:2018-06-10 21:23:24

标签: c# xml-namespaces xmlwriter ikvm

当我将xml写入XmlWriter对象时,下面的代码工作正常。但是,如果有一个名称空间声明更高,而我正在编写的xml重复它,它会在它写入的XML中重复它。合法但很混乱(我们有很多非常长的名称空间)。

我们目前的代码:

public void addInnerXml(String xml) throws TinyException
{

    try {
        StringReader strReader = new StringReader(xml);
        XmlReader reader = XmlReader.Create(strReader);
        reader.MoveToContent();

        parent.adjustStack(this);
        parent.getDoc().WriteNode(reader, false);
        reader.Dispose();
        strReader.Dispose();

        // needed for declaration
        if (false)
            throw new cli.System.Exception();
    }
    catch (cli.System.Exception ex)
    {
        throw new TinyException(ex);
    }
}

ps - 看起来有点奇怪,因为这是用IKVM编译的Java代码,它调用.NET运行时。

0 个答案:

没有答案