我已经开始使用Xsd2Code,并且迄今为止已直接从实际文件反序列化XML。 我现在需要做的是从局部变量反序列化xml。
这是一个代码段。
using (FileStream getResponseDataFromFile = new FileStream (@:\Temp\Output\DeclarationResponse.xml", FileMode.Open))
{
XmlSerializer serializeGbResponseXML = new XmlSerializer(typeof(declarationGbResponse));
declarationGbResponse myResponse = (declarationGbResponse)serializeGbResponseXML.Deserialize(getResponseDataFromFile);
foreach (var acceptanceResponseItem in myResponse.acceptanceResponse)
{
........
}
我需要做的是替换从FileSteam c:\ temp ...加载XML,而是从局部变量解析它,然后从该变量反序列化它。然后我可以使用Xsd2Code创建的类并显示和使用各种属性。
答案 0 :(得分:1)
只要" payloadXML"这对你有用。是一个格式良好的xml字符串。
public myType DeserializeEstimatePayload(string payloadXML)
{
myType est = null;
XmlSerializer xmlSerializer = new XmlSerializer(typeof(myType ));
MemoryStream memStream = new MemoryStream(Encoding.Unicode.GetBytes(payloadXML));
est = (myType )xmlSerializer.Deserialize(memStream);
xmlSerializer = null; memStream = null;
return est;
}