Zauważyłem, że XSD jest bardzo trudny w użyciu jako model do generowania kodu. Jest zbyt elastyczny i złożony, aby mógł być praktyczny dla moich potrzeb. Silnie napisany projektant/generator DataSet jest doskonałym przykładem próby użycia XSD jako modelu generowania kodu. To działa OK przez większość czasu, ale nie obsługuje wszystkich możliwych schematów, które można na nim rzucić. Z drugiej strony XSD nie może reprezentować informacji wymaganych do bezpośredniego generowania adapterów tabel, dlatego konieczne było utworzenie rozszerzeń specyficznych dla DataSet.
Jeśli zdecydujesz się użyć XSD jako modelu, prawdopodobnie będziesz chciał wybrać prosty podzbiór, wystarczający do tego, co musisz wygenerować. Jednym ze sposobów może być załadowanie schematu XSD do obiektu DataSet i użycie tego obiektu DataSet jako modelu. Metadane DataSet są łatwiejsze do uzyskania niż XSD ogólnego przeznaczenia. Umożliwi to również wykorzystanie istniejącego projektanta DataSet w Visual Studio do edycji modeli.
Myślę, że jest to najlepsze rozwiązanie w tym momencie. Lepszą duszą jest prawdopodobnie uniknięcie sytuacji na samym początku. – Will
Aby zaktualizować: Im obecnie przeglądam ten projekt - http://oxmlibrary.codeplex.com/ - Wydaje się nieco hackish, ale bardziej "hackable", jeśli ma to sens. –
Will, wracam do robienia tego dokładnie. Unikanie może być najlepsze, ale w przypadku, gdy standard branżowy został zdefiniowany w xsd, generowanie klas ze schematu jest bardzo ważną operacją. Choć niezbyt zabawne. –