如何在c#中将数据集转换为数据表

本文关键字:数据集 转换 数据表 | 更新日期: 2023-09-27 17:50:00

这是我的代码——我只需要将SQL数据集转换为asp.net 4.5中的数据表。我似乎弄不明白。有很多帖子都在做相反的事情,但我没有找到一个明确的答案。

public static DataTable getGender()
{
    DataTable DT = default(DataTable);        
    SqlConnection con = new SqlConnection(CnnString.ConnectionString.ToString());
    SqlCommand cmd = new SqlCommand("ns_gender_get", con);
    cmd.CommandType = CommandType.StoredProcedure;

    SqlDataAdapter da = new SqlDataAdapter();
    da.SelectCommand = cmd;
    DataSet ds = new DataSet();
    try
    {
        //Fill the Dataset
        da.Fill(ds, "Results");
        DT = ds.Tables(0);     
       //**GOAL:  I need to assign the DS.Table(0) to the DT (dataTable) so when this method is called it will return the table rows in the DT. 
    }
    catch (Exception ex)
    {
        throw ex;
    }
    finally
    {
        con.Close();
        con.Dispose();
        con = null;
    }
    return DT;
}

如何在c#中将数据集转换为数据表

实际上,DataSet包含DataTables的集合。你可以取第一张表:

DataTable dataTable = ds.Tables[0];

另一方面,如果您愿意,可以使用DataAdpter填充DataTable,例如:

DataTable dt = new DataTable();
da.Fill(dt);

查看更多信息:

https://msdn.microsoft.com/library/system.data.dataset.tables (v = vs.110) . aspx

http://www.dotnetperls.com/sqldataadapter

—问题原作者的编辑(供其他任何人查看)我终于想到了一个简单的解决办法——

 ds.Tables.Add(DT); // Code on how to add a table to a dataset!

这是一个提高代码速度的好方法!!