К сожалению, существуют случаи, когда svcutil генерирует тип DataContract и тип XmlSerializer для одного и того же типа схемы. Я советую вам попробовать использовать дополнительные переключатели «/ serializer: XmlSerializer / useSerializerForFaults» на svcutil и посмотреть, решит ли это вашу проблему. Это должно гарантировать, что Танга генерируется.
Как правило, для импорта схемы для генерации типов DataContract все типы, определенные в схемах, должны содержаться в подмножестве XSD, поддерживаемом DCS, которое можно найти здесь:
http://msdn.microsoft.com/en-us/library/ms733112.aspx
Если svcutil не удается сгенерировать прокси-сервер при указании «/ serializer: DataContractSerializer», то наиболее вероятным объяснением является то, что схема не соответствует DC. Видите ли вы другие ошибки или предупреждения при использовании svcutil?
Также обычно плохая практика - использовать DataSets (как типизированные, так и нетипизированные) и IXmlSerializables в общедоступных веб-сервисах. В этом случае, кажется, могут быть трудности с их импортом. Вот быстрая ссылка по некоторым другим причинам, это может быть проблематично: http://www.hanselman.com/blog/PermaLink,guid,d88f7539-10d8-4697-8c6e-1badb08bb3f5.aspx
Хотя DataContractSerializer может сериализовать типы IXmlSerializable, вовсе не гарантируется, что типы IXmlSerializable могут быть импортированы как контракты данных. Это две разные концепции. Типы IXmlSerializable могут предоставлять свои собственные схемы, поэтому они могут предоставлять схемы, которые не совместимы с datacontract и, таким образом, приводят к тому, что svcutil возвращается к генерации типов XmlSerializer.
Надеюсь, это поможет.