6

xsds から生成されたクラスを更新するいくつかの作業を見ています。これは T4 テンプレートの優れた使い方だと思いますが、これを行っている例は見当たりません。基本的に、 Linq to XSDが行ったことを実行したいと考えていますが、運用ソリューションにアルファ ビルド ターゲットを含めることはありません。

関連するリンクはありますか?


今はウィキ。関連する回答をここに保存します。

4

3 に答える 3

3

私は現在 xsd2code.net を使用しています。ここで見つけてください: http://xsd2code.codeplex.com/。多くのメリット:

  • オープンソースなので、調整/ハッキングできます

  • 配列をリストまたは独自のカスタム コレクション型に置き換える

  • コマンドラインから実行するか、Visual Studio アドインとして実行します (xsd を右クリックし、生成するよう指示します)。

また、単一の xsd ファイルで実行でき、参照されている xsd が見つからない場合 (xsd.exe のように) 爆発しないことも気に入っています。そのため、1 つのファイルを簡単に更新したい場合に備えて、個々のファイルに対して実行するのは簡単です。

ただし、T4もオプションである必要があります.T4 XSDをグーグルで検索したところ、これについて話しているいくつかのソリューションが見つかりました.

于 2009-10-05T15:56:10.763 に答える
2

どうぞ: http://www.olegsych.com/2008/08/t4-xsd-directive/

于 2011-10-01T17:31:36.993 に答える
1

XSD をコード生成のモデルとして使用するのは非常に難しいことがわかりました。柔軟性があり複雑すぎて、私のニーズには実用的ではありません。厳密に型指定された DataSet デザイナー/ジェネレーターは、XSD をコード生成モデルとして使用する試みの好例です。ほとんどの場合問題なく動作しますが、スローできるすべてのスキーマをサポートしているわけではありません。一方、XSD はテーブル アダプターを直接生成するために必要な情報を表すことができないため、DataSet 固有の拡張機能を作成する必要がありました。

先に進んで XSD をモデルとして使用する場合は、生成する必要があるものに十分な単純なサブセットを選択することをお勧めします。1 つの方法として、XSD スキーマを DataSet オブジェクトに読み込み、この DataSet オブジェクトをモデルとして使用することが考えられます。DataSet メタデータは、汎用 XSD よりもアクセスがはるかに簡単です。これにより、Visual Studio の既存の DataSet デザイナーを使用してモデルを編集することもできます。

于 2009-08-11T17:59:00.927 に答える