2009-05-25 14 views
27

xsd.exeから出力ファイル名を制御する方法はありますか?xsd.exe出力ファイル名

私の具体的な問題は、インポートされたxsdが参照されると、ファイル名に追加されるということです。

答えて

33

This link別の代替を示唆...入力スキーマを指定するには、パスの文字を使用して生成されたファイル名をリセットします。したがって、以下を使用すると、出力ファイル名を制御することができます。

xsd.exe schema1.xsd schema2.xsd .\schema3.xsd 

schema3.csファイルを生成するxsd.exeを強制します。

注:これはハックですが、今まで(VS 2010)は動作しています。

+3

+1、まさに私が必要なもの! (パラメータファイルで指定されたスキーマの場合でも動作します) – Regent

+1

最後のファイルで "。\"を使用する必要があることに注意してください。必要に応じて、コマンドの入力ファイル名の順序を変更します。 – Marcel

+0

ちょうど美しい! – pvieira

6

更新:@ Obalixの答えをご覧ください。のみ出力フォルダ

番号:hereから

/o[ut]:directoryName 

11

xsd.exeは入力ファイル名に基づいてファイルの出力名を自動的に選択します。/oスイッチを使用して出力するディレクトリのみを選択できます。

つまり、バッチジョブでこれをラップするのは簡単です。それは、あなたが望むことをするでしょう。

rename output.cs yourname.cs 
8

AxelEckenbergerの答えに追加するには、これを定期的に(バッチスクリプトで)実行している場合は、ハックを少し改善します。あなたは

Output.xsd

<?xml version="1.0" encoding="utf-8"?> 
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" /> 

を使用したい出力名を持つ空のスキーマファイルを作成します。そして、あなたは今、出力ファイルを出力

xsd.exe schema1.xsd schema2.xsd schema3.xsd .\Output.xsd 

の名前を変更する必要はありませんでしょう名前はOutput.csとなります。

関連する問題