5

次のようなものを生成する必要があります。

<AmazonEnvelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="amzn-envelope.xsd">
<Header>
...
</Header>
</AmazonEnvelope>

私はこのようなことを試みていましたが、完全には正しくありません:

XmlSerializerNamespaces nms = new XmlSerializerNamespaces();
        nms.Add("xsi", "http://www.w3.org/2001/XMLSchema-instance");
        nms.Add("noNamespaceSchemaLocation", "amzn-envelope.xsd");



        XmlSerializer serializer = new XmlSerializer(typeof(XMLAmazonEnvelope));
        StreamWriter writer = new StreamWriter(path);

        serializer.Serialize(writer, objectToSave,nms);
        writer.Close();

結果は次のとおりです。

<?xml version="1.0" encoding="utf-8"?>
<xsi:AmazonEnvelope xmlns:noNamespaceSchemaLocation="amzn-envelope.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<xsi:Header>
...
</xsi:Header>
</xsi:AmazonEnvelope>

そして、これはまさに私が望むものではありません。何かアイデアはありますか?

4

1 に答える 1

0

ここですでに解決された質問:

xml 名前空間を追加する方法 (Amazon Envelope)

于 2012-06-14T22:09:59.177 に答える