.NET XML Seralization

Wes*_*s P 0 .net xml serialization xml-serialization

我正在研究一组将用于序列化为XML的类.XML不是由我控制的,而且组织得相当好.不幸的是,有几组嵌套节点,其中一些的目的只是为了保存他们孩子的集合.根据我目前对XML序列化的了解,这些节点需要另一个类.

有没有办法使类序列化为一组XML节点而不是一个.因为我觉得我像泥一样清醒,所以说我们有xml:

<root>
    <users>
        <user id="">
            <firstname />
            <lastname />
            ...
        </user>
        <user id="">
            <firstname />
            <lastname />
            ...
        </user>
    </users>
    <groups>
        <group id="" groupname="">
            <userid />
            <userid />
        </group>
        <group id="" groupname="">
            <userid />
            <userid />
        </group>
    </groups>
</root>
Run Code Online (Sandbox Code Playgroud)

理想情况下,3个班级是最好的.一类root与集合usergroup对象.然而,最好的我可以计算的是,我需要一个类root,users,user,groupsgroup,其中usersgroups包含的唯一集合usergroup分别,并root包含一个usersgroups对象.

在那里谁知道比我更好?(别撒谎,我知道有).

Rob*_*per 6

你没有使用XmlSerializer吗?这真非常棒,让这样的事情变得非常简单(我使用它非常多!).

您可以使用一些属性简单地装饰您的类属性,其余的都是为您完成的.

您是否考虑过使用XmlSerializer,或者有什么特别的原因吗?

下面是完成上述序列化所需的所有工作的代码片段(两种方式):

[XmlArray("users"),
XmlArrayItem("user")]
public List<User> Users
{
    get { return _users; }
}
Run Code Online (Sandbox Code Playgroud)