DataSet的详细使用

2024-11-08 12:13:55
推荐回答(3个)
回答(1):

多少无益 代码上!

DataSet ds = userroleBll.GetuserID(int.Parse(roleId));//根据角色ID查询用户ID
DataSet ds2 = new DataSet();
DataTable dt = new DataTable();
dt.Columns.Add("empname");
for (int i = 0; i < ds.Tables.Count; i++)//表
{
for (int j = 0; j < ds.Tables[i].Rows.Count; j++) //行
{
for (int m = 0; m < ds.Tables[i].Columns.Count; m++)//列
{
if (ds.Tables[i].Rows[j][m] != null)//判断是否为空
{
DataRow dr = dt.NewRow();
string id = ds.Tables[i].Rows[j][m].ToString();
employee = employeeBll.GetModelName(Convert.ToInt32(id));
if (employee == null)
{ }
else
{
dr[0] = employee.empname;
dt.Rows.Add(dr);
}
}
}
}
}
ds2.Tables.Add(dt);
this.DataList1.DataSource = ds2; //绑定数据源
this.DataList1.DataBind();

}

回答(2):

去MSDN看吧,官方文档。
这个页面是DataSet所有成员,有每个成员的功能和使用方法。
在DataSet类的那个页面里面还有示例代码。
http://msdn.microsoft.com/zh-cn/library/system.data.dataset_members(v=VS.80).aspx

回答(3):

DataSet是ADO.NET的中心概念。可以把DataSet当成内存中的数据库,DataSet是不依赖于数据库的独立数据集合。所谓独立,就是说,即使断开数据链路,或者关闭数据库,DataSet依然是可用的,DataSet在内部是用XML来描述数据的,由于XML是一种与平台无关、与语言无关的数据描述语言,而且可以描述复杂关系的数据,比如父子关系的数据,所以DataSet实际上可以容纳具有复杂关系的数据,而且不在依赖于数据库链路。
因为DataSet可以看做是内存中的数据库,也因此可以说DataSet是数据表的集合,它可以包含任意多个数据表(DataTable),而且每一 DataSet中的数据表(DataTable对应一个数据源中的数据表(Table)或是数据视图(View)。数据表实质是又行(DataRow)和 列(DataColumn)组成的集合为了保护内存中数据记录的正确性,避免并发访问时的读写冲突,DataSet对象中的DataTable负着维护每 一条记录,分别保存记录的初始状态和当前状态。从这里可以看出DataSet是与只能存放单张数据表的Recordset是截然不同的概念。 DataSet对象结构还是非常复杂的,在DataSet对象的下一层中是DataTableCollection对象、 DataRelationCollection对象和ExtendedProperties对象。上文已经说过,每一个DataSet对象是由若干个 DataTable对象组成。DataTableCollection就是管理DataSet中的所有DataTable对象。表示DataSet中两个 DataTable对象之间的父/子关系是DataRelation对象。它使一个DataTable 中的行与另一个DataTable中的行相关联。这种关联类似于关系数据库中数据表之间的主键列和外键列之间的关联。 DataRelationCollection对象就是管理DataSet中所有DataTable之间的DataRelation关系的。在 DataSet中DataSet、DataTable和DataColumn都具有ExtendedProperties属性。 ExtendedProperties其实是一个属性集(PropertyCollection),用以存放各种自定义数据,如生成数据集的SELECT 语句等。
DataSet对象的三大特性
通过上面几节中的介绍和本节中的分析,我们可以总结出DataSet对象的三大特性: (1) 独立性。DataSet独立于各种数据源。 (2) 离线(断开)和连接。 (3) DataSet对象是一个可以用XML形式表示的数据视图,是一种数据关系视图。
DataSet使用方法
在实际应用中,DataSet使用方法一般有三种: (1) 把数据库中的数据通过DataAdapter对象填充DataSet。 (2) 通过DataAdapter对象操作DataSet实现更新数据库。 (3) 把XML数据流或文本加载到DataSet。