2010-06-07 12 views
37

Ich bin Visual Studio 2010 ausgeführt. Ich habe ein XSD Schema und möchte Xsd.exe-Tool verwenden, um entsprechende C# -Datei zu generieren. Ich habe dies erfolgreich von einer Befehlszeile aus getan, aber jetzt möchte ich das Gleiche von IDE machen.Automatisch generieren XSD zu C# in Visual Studio IDE

Gibt es dafür eine bekannte Route? Ich habe es geschafft, ein Pre-Build-Event zu verwenden, aber ich hasse es, das Tool bei jedem Build laufen zu lassen. Normalerweise sollte es nur ausgeführt werden, wenn sich XSD ändert.

Wenn Sie die generierte .cs-Datei zum Projekt hinzufügen, wird sie unter .xsd mit dem gleichen Namen eingefügt, sodass die IDE weiß, dass sie verwandt sind.

Ich weiß, dass ich "Custom Tool" auf meinem .xsd einstellen kann, aber ich bin mir nicht sicher, ob das den gewünschten Effekt erzielt. Ich hatte auf einen einfacheren Weg gehofft.

Und schließlich kann VS2010 XSD.EXE nicht ausführen, da es im SDK-Ordner lebt und der Pfad zu VS offensichtlich nicht darin enthalten ist.

Alle Vorschläge sind willkommen!

Antwort

39

Sie können Xsd2Code für ein VS-Addin auschecken, das dies interaktiv tut. Der Autor arbeitet auch an einer VS2010-Version, soweit ich weiß.

alt text http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=Xsd2Code&DownloadId=41336

+2

Danke! Ich hoffte auf etwas, das XSD.EXE von Windows SDK verwenden würde, aber das ist auch in Ordnung. Außerdem funktioniert das Add-In mit VS 2010. – wpfwannabe

+1

Diese Lösung erfordert die Installation des Tools in allen Instanzen von Visual Studio. Kennen Sie etwas, das keine Installation eines Plugins erfordert? – yamspog

+0

@yamspog: Nein, ich weiß nicht - all die anderen Lösungen, die ich kenne, sind im Grunde nur verschiedene Plugins/Erweiterungen für VS. –

9

Sie können auch als externes Tool hinzufügen (Werkzeuge klicken - externe Tools ...), um Visual Studio (2015). Wählen Sie dann einfach das xsd-Schema im Visual Studio aus und klicken Sie auf Tools - xsd, um die Klassendatei zu generieren.

adding xsd as an external tool

Parameter:

  • Befehl: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.7 Tools\xsd.exe (mit Ihrer Version von FX Tools ersetzen)
  • Argumente: /c "$(ItemDir)$(ItemFileName)$(ItemExt)"
  • Anfangsverzeichnis: $(ItemDir)
  • Verwenden Ausgabefenster : yes
Verwandte Themen