Помимо попытки вывести атрибуты вручную, менее известной особенностью .Net SDK является то, что xsd.exe может сделать всю работу за вас.В командной строке .Net просто введите:
xsd.exe <name of your schema>.xsd /classes
Это создаст правильные классы сериализации для этой схемы.Если у вас нет схемы, вы можете позволить xsd.exe сгенерировать ее для вас.Просто передайте ему образец XML-файла, подобный тому, который вы указали в качестве аргумента, и он создаст соответствующий файл XSD.
Сгенерированные классы являются частичными, так что вы можете расширить их без необходимости повторного применения всех ваших изменений, если вам случится их регенерировать.
Помимо "/ classes" есть и другие ключи, которые могут прийтиудобно, например, "/ ebd", который создает классы, реализующие INotifyPropertyChanged, или "/ fields", который генерирует простые поля вместо свойств.