Я пытаюсь использовать службу отдыха, которая возвращает данные XMI следующим образом:
<xmi:XMI xmlns:xmi="http://www.omg.org/XMI" xmi:version="2.0">
...
</...>
Я хочу использовать это в контракте на обслуживание следующим образом:
[ServiceContract]
[XmlSerializerFormat]
interface IMyService
{
[OperationContract]
[WebGet(
BodyStyle = WebMessageBodyStyle.Bare,
ResponseFormat = WebMessageFormat.Xml,
UriTemplate = "myMethod")]
MyData MyMethod();
...
}
Мои данныеКонтракт выглядит следующим образом (пуст для тестирования):
[DataContract]
[XmlRoot]
public class MyData
{
}
Я получаю следующее исключение:
Невозможно десериализовать тело XML с корневым именем 'XMI' и корневым пространством имен 'http://www.omg.org/XMI' (для операции 'MyMethod' и контракта ('IMyService', 'http://tempuri.org/')) с использованием XmlSerializer. Убедитесь, что тип, соответствующий XML, добавлен в коллекцию известных типов службы.
У кого-нибудь есть идеи? (Ямогу использовать другие службы REST без пространств имен)