Код: Выделить всё
abc
Код: Выделить всё
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
[System.ServiceModel.MessageContractAttribute(WrapperName = "ConvertResponse", WrapperNamespace = "urn:stef", IsWrapped = true)]
public partial class ConvertResponse
{
[System.ServiceModel.MessageBodyMemberAttribute(Namespace = "urn:stef", Order = 0)]
public string Result;
public ConvertResponse()
{
}
public ConvertResponse(string Result)
{
this.Result = Result;
}
}
Код: Выделить всё
private static T Deserialize(string xml)
{
var stream = new MemoryStream(Encoding.ASCII.GetBytes(xml));
var message = Message.CreateMessage(XmlReader.Create(stream), int.MaxValue, MessageVersion.Soap11);
var importer = new SoapReflectionImporter(new SoapAttributeOverrides(), "urn:stef");
var mapping = importer.ImportTypeMapping(typeof(T));
var xmlSerializer = new XmlSerializer(mapping);
return (T)xmlSerializer.Deserialize(message.GetReaderAtBodyContents());
}
Но это не работает, поскольку ConvertResponse< Класс /code> не имеет свойства public для Result, поэтому Result имеет значение null после десериализации.
Итак мой вопрос в том, если есть ли способ десериализовать это сообщение XML-мыла в этот (сгенерированный) класс?
Подробнее здесь: https://stackoverflow.com/questions/722 ... ated-class