又有新问题了,DataTable写入Xml问题,急急急!!!

feifan20 2012-08-02 04:28:00
xml标准格式是这样的:
<?xml version="1.0" standalone="yes"?>
<VoucherSet>
  <Voucher>
    <segment>会员卡</segment>
    <payment>现金</payment>
    <summary>1</summary>
    <subjectType>现金</subjectType>
    <subject>1</subject>
    <memo>1</memo>
  </Voucher>
</VoucherSet>
代码生成后:
<?xml version="1.0" standalone="yes"?>
<DocumentElement>
<Voucher>
<segment>会员卡</segment>
<payment>现金</payment>
<summary>1</summary>
<subjectType>现金</subjectType>
<subject>1</subject>
<memo>1</memo>
</Voucher>
</DocumentElement>
对于这个<DocumentElement>我应该如何设置???
C#代码如下:
DataTable dt = new DataTable("Voucher");
dt.Columns.Add(new DataColumn("segment"));
dt.Columns.Add(new DataColumn("payment"));
dt.Columns.Add(new DataColumn("summary"));
dt.Columns.Add(new DataColumn("subjectType"));
dt.Columns.Add(new DataColumn("subject"));
dt.Columns.Add(new DataColumn("memo"));
int count = this.dgvVoucherSet.Rows.Count -1; //取到 凭证设置 行数(-1:去掉空行)
for (int i = 0; i < count; i++)
{
string segment = dgvVoucherSet.Rows[i].Cells["segment"].Value.ToString(); //业务分类
string payment = dgvVoucherSet.Rows[i].Cells["payment"].Value.ToString(); //支付方式
string summary = dgvVoucherSet.Rows[i].Cells["summary"].Value.ToString(); //摘要
string subjectType = dgvVoucherSet.Rows[i].Cells["subjectType"].Value.ToString(); //科目类型
string subject = dgvVoucherSet.Rows[i].Cells["subject"].Value.ToString(); //会计科目
string memo = dgvVoucherSet.Rows[i].Cells["memo"].Value.ToString(); //备注

DataRow dr = dt.NewRow();
dr["segment"] = segment;
dr["payment"] = payment;
dr["summary"] = summary;
dr["subjectType"] = subjectType;
dr["subject"] = subject;
dr["memo"] = memo;
dt.Rows.Add(dr);
}
dt.WriteXml(GetXmlFullPath(xmlName));
急啊,大家快帮帮忙吧!
...全文
137 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
qldsrx 2012-08-02
  • 打赏
  • 举报
回复
VoucherSet不就是DataSet的名字吗?而Voucher则是DataTable的名字,你是从DataTable输出的,缺少DataSet的命名设置。
luhuiming741cs 2012-08-02
  • 打赏
  • 举报
回复
不要用自带的方法,自己写一个呗
天下如山 2012-08-02
  • 打赏
  • 举报
回复
尝试着弄个DataSet tablename设为VoucherSet 在WriteXml试试
feifan20 2012-08-02
  • 打赏
  • 举报
回复
使用其它方法也可以解决问题,主要是想知道有没有办法解决这个问题,实在不行就得换方法了!

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧