Я боролся и боролся и боролся с этой проблемой и не смог успешно получить xsd.exe для генерации схемы из класса в dll, из командной строки, на моей машине.
В конечном итоге я развернул виртуальную машину Windows XP для запуска xsd.exe, который работал нормально, но, вероятно, не является удовлетворительным ответом.
По какой-то причине, когда я создаю новое консольное (или, возможно, любой другой) тип приложения в Visual Studio, я могу добавить ссылку на xsd.exe и ссылаться на нее программно, например, здесь:
namespace XsdExeTest
{
class Program
{
static void Main(string[] args)
{
var rgs = new string[]
{
@"C:\publish\bin\SoAndSo.Library.dll",
"/type:SoAndSoNamespace.SoAndSoClassName"
};
XsdTool.Xsd.Main(rgs);
}
}
}
.,,и я получаю вывод "запись файла schema0.xsd. Немного странный обходной путь, но гораздо проще, чем раскрутить виртуальную машину, если у вас еще нет одной удобной.
Я предполагаю, что не всевозникла эта проблема из-за нехватки справочной информации, которую я нашел в Интернете.