如何从XML获取DataType特定的DataTable [英] How to get DataType specific DataTable from XML

查看:283
本文介绍了如何从XML获取DataType特定的DataTable的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何从XML获取DataType特定的DataTable

How to get DataType specific DataTable from XML

这是我的代码

string XMLReportFormat =@"<?xml version="1.0" encoding="utf-8" ?>
<Table>
    <ReportBody>
      <TableRow>
        <ID>1</ID>
        <ParentID>1</ParentID>
        <Key>First1</Key>
      </TableRow>
      <TableRow>
        <ID>4</ID>
        <ParentID>1</ParentID>
        <Key>FirstChild4</Key>
      </TableRow>
    </ReportBody>
</Table>";

StringReader sReader = new StringReader(XMLReportFormat);
DataSet ds = new DataSet();

if (sReader == null)
    return null;
ds.ReadXml(sReader);

这里我得到所有的数据类型列作为 String
我想要一些列,如 ID ParentID as Integer

Here I am getting all DataType of columns as String. I want some columns like ID and ParentID as Integer

推荐答案

是的!我找到答案。

private static DataTable CreateDataTable()
{
    DataTable dt = new DataTable("TableRow");
    dt.Columns.Add(new DataColumn("ID", typeof(int)));
    dt.Columns.Add(new DataColumn("ParentID", typeof(int)));
    return dt;
}
public static DataTable GetReportFormatFromXML(string XMLReportFormat)
{
    if (XMLReportFormat == string.Empty)
        return null;
    StringReader sReader = new StringReader(XMLReportFormat);
    DataSet ds = new DataSet();

    if (sReader == null)
        return null;
    ds.Tables.Add(CreateDataTable());
    return ds.Tables[0];
}

此行帮助我:)

ds.Tables.Add(CreateDataTable());

这篇关于如何从XML获取DataType特定的DataTable的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆