У меня возникла проблема с достижением следующего сценария.WCE десериализация типа объекта Свойства
В настоящее время у нас есть метод, который ожидает список пар значений ключа «контекст». Однако значение может быть любого типа.
Цель состоит в том, чтобы сделать этот метод доступным с использованием WCF. Таким образом, я создал
public List<Element> Transform(List<Element> elements)
{
... Transformation of elements takes place
}
[DataContract(Namespace = Constants.NAMESPACE)]
public struct Element
{
[DataMember(Order = 0, IsRequired = true)]
public string Key;
[DataMember(Order = 1, IsRequired = true)]
public object Value;
}
Когда я использую тестовый проект .Net, все работает нормально.
Однако, когда я называю эту услугу с помощью SOAP UI я получаю сообщение об ошибке:
Форматировщика бросил исключение при попытке десериализации сообщений: Была ошибка при попытке десериализации элементов параметров. Сообщение InnerException было: «Element Value не может иметь дочернее содержимое для десериализации как объекта. Используйте XmlNode [] для десериализации этого шаблона XML. '.
У меня проблема выяснение, что делать. любая помощь оценивается.
XML-я использую это:
<ws:Transform>
<ws:elements>
<ws:Element>
<ws:Key>Key1</ws:Key>
<ws:Value>A</ws:Value>
</ws:Element>
<ws:Element>
<ws:Key>Key2</ws:Key>
<ws:Value>B</ws:Value>
</ws:Element>
<ws:ScriptName>SetVariable</ws:ScriptName>
</ws:elements>
</ws:Transform>