繁体   English   中英

XML反序列化并将部分对象作为XML返回

[英]XML Deserialize and return part of the object as XML

甚至都不知道如何搜索,但是当我反序列化xml字符串时,我希望它返回XML的第一级:

字符串: <pkt><cmd>logreq</cmd><data><name>scott</name><password>abc123</password><designator>R233</designator><token>123456</token></data></pkt>

当我使用此代码时:

    class xmlFunctions
{
    public Cmd GetCmd(string sXML)
    {
        Cmd cmd = new Cmd();
        try
        {
            var sr = new StringReader(sXML);
            var xs = new XmlSerializer(typeof(Cmd));
            cmd = (Cmd)xs.Deserialize(sr);
            return cmd;
        }
        catch (Exception)
        {                
           Console.WriteLine("Cannot Parse Input.");
        }
        return cmd;
    }
}

这是我的Cmd对象:

[XmlRoot("pkt")]
public class Cmd
{
    public string cmd { get; set; }
    public string data { get; set; }

}

我希望Cmd.cmd = logreq和Cmd.data = <name>scott</name><password>abc123</password><designator>R233</designator><token>123456</token>

但数据=斯科特。

如何获取返回上面的XML部分的信息? 似乎它想反序列化所有xml,而不仅是第一层?

谢谢。

我觉得你真的是一个解析XML字符串,并返回root节点。 在这种情况下,这就是您要寻找的如何使用XmlReader解析XML的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM