我正在处理数据采集应用程序,并且我想使用DataSet类的XML写入方法实现保存项目功能。当我在我的数据表(双精度数,字符串等)中使用原始类型时,XML写入/读取工作正常。但是,当我向我的数据表添加一个自定义类类型列时,XML文件输出将充满包含xmlns,URL等的奇怪行。我知道这是由自定义类引起的,但我怎么能摆脱它们?它使整个XML读取过程非常缓慢。
编辑(只是一个快速草图):
namespace CustomClassXMLExporterTest
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
DataSet ds = new DataSet();
DataTable dt = new DataTable();
dt.Columns.Add("Name", typeof(string));
dt.Columns.Add("Result", typeof(Result));
Result r1 = new Result();
r1.name = "Somebody";
r1.value = 0.1234;
r1.valid = true;
DataRow dr = dt.NewRow();
dr["Name"] = "Somebody";
dr["Result"] = r1;
dt.Rows.Add(dr);
ds.Tables.Add(dt);
ds.WriteXml("C:\\testxml.xml");
}
}
public class Result
{
public double value;
public string name;
public bool valid;
}
}
输出xml:
<?xml version="1.0" standalone="yes"?>
<NewDataSet>
<Table1>
<Name>Somebody</Name>
<Result xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<value>0.1234</value>
<name>Somebody</name>
<valid>true</valid>
</Result>
</Table1>
</NewDataSet>