1

私は次のことを試みました(そして失敗しました)。

  1. サンプルXMLファイルを作成します。

    <?xml version="1.0" encoding="utf-8"?> <test1> <test2>Test3</test2> </test1>

  2. Visual Studio 2010で実行してxsd、XSDファイルを生成します。

    xsd test.xml

  3. XSDファイルをVisualStudio2010のC#プロジェクトに追加します。これにより、ファイルが追加されます。

    • test.Designer.cs
    • test.xsc
    • test.xss

    以下に示すように、デザイナービューに表示されます。

    ここに画像の説明を入力してください

  4. 次に、すべてを開始したファイルを逆シリアル化しようとします。

var reader = new FileStream("xml/test.xml", FileMode.Open);
var serializer = new System.Xml.Serialization.XmlSerializer(typeof(NewDataSet)); var test = serializer.Deserialize(reader);

エラーが発生します

ここに画像の説明を入力してください

内側の例外は言う{"<test1 xmlns=''> was not expected."}

私は何が間違っているのですか?またはxsd、クラスの生成にも使用する必要がありますか?

4

2 に答える 2

1

ファイルをバイトとして開き、MemoryStreamにキューに入れる必要があります。次に、MemoryStreamから逆シリアル化できます。

確認するタイプ/メソッドは次のとおりです。

さらに方向性が必要な場合は、コードサンプルを投稿できます。

于 2013-02-21T02:51:26.910 に答える
0

OK、それはそれのようです:

xsd test.xsd /c

正しく逆シリアルtest.cs 化するのではなく、これをタイプとして使用して生成します。NewData

于 2013-02-21T02:44:32.303 に答える