2010-06-07 40 views
37

içinde C# için otomatik olarak XSD oluşturmak Visual Studio 2010 çalıştırıyorum. XSD şema var ve uygun C# dosyası oluşturmak için xsd.exe aracını kullanmak istiyorum. Bunu bir komut satırından başarıyla yaptım ama şimdi IDE'den aynısını yapmak istiyorum.Visual Studio IDE

Bunun için iyi bilinen bir yol var mı? Önceden oluşturulmuş bir etkinliği kullanmayı başardım ancak aracın her bir yapı üzerinde çalışmasını istemem. Normalde, sadece XSD değiştiğinde çalışmalıdır.

Oluşturulan .cs dosyasını projeye eklemek, aynı adla .xsd altına yerleştirir, böylece IDE ilişkili olduğunu bilir.

.xsd'de "Özel Araç" ayarlayabildiğimi biliyorum, ancak bunun istenen etkiyi gerçekleştirip gerçekleştirmediğinden emin değilim. Daha açık bir şekilde umuyordum.

Ve sonuçta, VS2010, SDK klasöründe yaşadığı ve VS'nin bilinen yolunu içermediği için XSD.EXE dosyasını çalıştıramaz.

Herhangi bir öneride bulunabilirsiniz!

cevap

39

Bu etkileşimli olarak yapan bir VS eklentisi için Xsd2Code'a bakabilirsiniz. Yazar, bildiğim kadarıyla bir VS2010 sürümü üzerinde çalışıyor.

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

+2

Teşekkürler! Windows SDK XSD.EXE kullanacak bir şey için umuyordum ama bu da sorun değil. Ve btw, eklenti VS 2010 ile çalışır. – wpfwannabe

+1

Bu çözüm, aracın tüm görsel stüdyo örneklerine yüklenmesini gerektirir. Eklentinin yüklenmesini gerektirmeyen herhangi bir şey biliyor musunuz? – yamspog

+0

@yamspog: hayır, bilmiyorum - bildiğim tüm diğer çözümler temelde VS için farklı eklentiler/uzantılar. Bazı uyarılar ve geçici çözümler için –

9

Ayrıca (araçlar'ı tıklayın - ... harici araçlar) harici araç olarak ekleyebilirsiniz visual studio (2015) için. Sonra sadece görsel stüdyosunda xsd şemasını seçin ve sınıf dosyasını oluşturmak için xsd araçlarına tıklayın.

adding xsd as an external tool

Parametreler:

  • Komut: /c "$(ItemDir)$(ItemFileName)$(ItemExt)"
  • İlk dizin: $(ItemDir)
  • Kullanım Çıktı penceresi C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.7 Tools\xsd.exe
  • Argümanlar (FX araçları sürümü ile değiştirin) : yes