Так что это работает, я думаю, что это было не так ужасно, как казалось:
var soapReflectionImporter = new SoapReflectionImporter();
var xmlTypeMapping = soapReflectionImporter.ImportTypeMapping(typeof(Person));
var xmlSchemas = new XmlSchemas();
var xmlSchema = new XmlSchema();
xmlSchemas.Add(xmlSchema);
var xmlSchemaExporter = new XmlSchemaExporter(xmlSchemas);
xmlSchemaExporter.ExportTypeMapping(xmlTypeMapping);
Я все еще надеялся, что есть решение с двумя строками, похоже, что должно быть, спасибо заподсказка @ dtb
РЕДАКТИРОВАТЬ Только для ударов, вот двухстрочная версия (самоуничижительный юмор)
var typeMapping = new SoapReflectionImporter().ImportTypeMapping(typeof(Person));
new XmlSchemaExporter(new XmlSchemas { new XmlSchema() }).ExportTypeMapping(typeMapping);