2014-09-19 73 views
0

首先,我感谢您的时间帮助我。我是C#的新手,虽然我可以制定大部分的事情,但我确实有一些地方在努力。使用带有元素和属性的XmlSerializer创建一个XML文件

我正在捕获SNMP陷阱并希望将它们保存到XML文件中。我有以下类:

Public class data 
    { 
     public string id; 
     public string name; 
     public string OIDvalue; 
    } 

我想创建一个类似于以下的XML文件,该文件将具有可变数量的id和oid。

<?xml version="1.0"?> 
<data> 
    <devices> 
     <device id="ID23213"> 
      <oids> 
       <oid name="10.22.1213.212.2424" value="345"></oid> 
       <oid name="10.22.1213.212.2424.244.22" value="test"></oid> 
       <oid name="10.22.1213.212.2424.244.23" value="test1"></oid> 
      </oids> 
     </device> 
     <device id="ID111"> 
      <oids> 
       <oid name="10.22.1213.212.2424" value="38382"></oid> 
       <oid name="10.22.1213.212.2424.244.22" value="twehjwe98"></oid> 
       <oid name="10.22.1213.212.2424.244.23" value="uhu889"></oid> 
       <oid name="textBased.Reference.Pointer" value="88889"></oid> 
       <oid name="textBased.Reference.Pointer.10.111" value="0909"></oid> 
      </oids> 
     </device> 
    </devices> 
</data> 

我使用下面的代码创建XML文件

XmlSerializer xs = new XmlSerializer(typeof(data)); 
using (FileStream fs = new FileStream(dataPath, FileMode.Create)) 
{ 
    xs.Serialize(fs, snmp); 
} 

我做的研究公平一点,并可用,至今没有工作过不同的选择感到困惑。请帮忙!

回答

0

简单的一个。 让我们走相反的路。

如果您在XML结构,然后为您的XML C#文件,使用XSD.EXE(你可以在google如何生成)

然后它只是将其写入使用C#类的XML文件。

相关问题