2016-06-30 20 views
0

私は(外部)サービスを利用するプロジェクトに取り組んでいます。XSDスキーマをクラスに変換する

ベンダーはXSD(89個)のヒープ全体を提供しており、それらをすべて.NET(C#)クラス/クラスライブラリに変換したいと考えています。

私はこれらにXSDユーティリティを使用していますが、相互参照とインポートがたくさんあるように、彼らは私の私のグーグルをベースと今 type 'xxxxx' not declared

を言うエラーメッセージ、で失敗している、これは非常に単純にすることによって克服される

完全なリファレンス「木」をコンパイルしますが....

  1. は私が
  2. を変換する89個のファイルを持っていることは、(すべてのスキーマ出力は.csファイル名のために一緒に名前(と長すぎることに起因する破損を連結します> 260char))

基本レベルのスキーマ(インポートなしのもの)から始めて、XSDにスキーマを変換するよう指示したが、このアセンブリの参照された型を使用すると思ったが、どうやってそれが可能であっても。

だから、どのように私は最高の...何かアドバイスは大歓迎ですしてくださいこれを行うことができます。..

そして、はい、89のスキーマがたくさんあり、残念ながら、私はこの上で制御することはできません、私はちょうどそれを吸うために持っていますそれを処理してください。

+0

私は実際にコードが失敗しているXMLのサンプルを参照してくださいする必要があります。通常、 'タイプ'がxmlのシリアル化で使用されるとき、それは継承されたクラスがあることを示します。通常、xmlのシリアル化をテストするために、データを含むテストクラスのセットを作成し、データをファイルにシリアル化します。次に、プロセスを逆にしてデータを逆シリアル化します。次に、serialize xmlファイルとベンダから提供された実際のxmlファイルを比較できます。 – jdweng

+0

XMLではありません... XSD ....質問タイトルがあいまいされている可能性があります。 –

+0

サービスへの '.asmx'または' .wsdl'リンクがありますか?もしそうなら、VS Solution Explorerに 'Service Reference ...'を追加してクラスを生成してみてください。 –

答えて

0

xsd.exeで/P[arameters]:file.xmloptionを使用して、コマンドラインで渡す代わりに、別のファイルに多くのパラメータを指定することができます。このXMLの

サンプル:

<xsd xmlns='http://microsoft.com/dotnet/tools/xsd/'> 
    <generateClasses language='CS' namespace='MyNamespace'> 
     <schema>FirstSchema.xsd</schema> 
     <schema>SecondSchema.xsd</schema> 
     <schema>ThirdSchema.xsd</schema> 
    </generateClasses> 
</xsd> 
関連する問題