2009-12-03 6 views
15

Bir XSD'den C# autogenerate sınıflarına sahip olmanın ve XSD'deki ad alanı bilgilerini kullanarak C# ad alanları oluşturmanın bir yolunu arıyoruz.XSD Ad Alanı C# Ad Alanı

XSD'den bir yapısal (xxxx.yyyy.zzzz) C# ad alanı oluşturabiliyor gibi görünmüyor mu?

Eksik olduğumuz bir numara var mı?

Teşekkürler

+0

Bazı ayrıntıları ekler misiniz? Ne denedin? Ne işe yaramadı? – Oded

+0

Sadece 'http' ve eğik çizgileri ad alanı URL'sinden çıkaramaz ve eğik çizgileri noktalarla değiştirerek bir C# ad alanı oluşturamaz mısınız? (örneğin http://mydomain.com/myservice/1.0 = ad alanı mydomain.com.myservice.1.0 –

cevap

22

Bu hile yapar mı?/N üretilen sınıfı koymak için bir ad belirlemenizi sağlar.

xsd.exe /classes MyXSDInput.xsd /n:MyCsharpNamespace 
+2

Bu çalışan bir çözümdür +1 –

3

Codeplex üzerinde gerçekten ilginç bir proje XSD2Code var. Temel olarak xsd.exe ile aynıdır - sadece daha iyi, komut satırında ve bir Visual Studio eklentisi olarak.

Çözüm explorer'ınızda bir XSD dosyasına sağ tıklayıp aracı çalıştırın!

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

Sen oluşturulan kod dosyaları için hedef ad olarak herhangi bir geçerli NET ad ayarlayabilirsiniz.

Güncelleme: XSD2Code aracı daha da geliştirilmiştir ve şimdi özgür ve ücretli ticari aracı hem olarak sunulmaktadır - see the official home page for more details.

+0

Bu araçlar (Xsd2Code) son derece yararlı olabilir, ancak nVS2012'de kullanamıyorum. VS Gallery'den hem eklenti hem de Codeplex'ten indirilemedi.Çok işe yaradı, bu yüzden oy verdim - cevabınız için aşağı 1. –

+1

@achristov: Duyduğuma üzüldüm - ama sorunlarınızı yeniden oluşturamıyorum - sadece aracı tekrar indirdim, Codeplex, yüklü, Visual Studio'yu yeniden başlattı ve XSD2Code aracını çok iyi kullanabilirim.Zayıflama biraz sert görünüyor - eğer bir sorun varsa, o zaman bunu düzeltmek için ** yazarın ** işi olurdu. Böyle bir sorun için * cezalandırılmamış * .... –

+0

Burada Xsd2Code için bağlantı bulundu, cevabınızda. Bir araç yükleme ile ilgili sorunlar olduğunda, bu bir yararı yok, değil mi? Devam edelim? –