using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
namespace _14._13数据集DataSet
{
class Program
{
static void Main(string[] args)
{
//创建DataSet对象
DataSet myds = new DataSet("csharp51zxw");//定义数据集
DataTable mydt = new DataTable("mytable001");//定义数据表
myds.Tables.Add(mydt);//数据集加载数据表
DataColumn myDataColumn1 = new DataColumn("id", Type.GetType("System.Int32"));//定义字段
DataColumn myDataColumn2 = new DataColumn("name", Type.GetType("System.String"));
DataColumn myDataColumn3 = new DataColumn("department", Type.GetType("System.String"));
mydt.Columns.Add(myDataColumn1);//数据表加载字段
mydt.Columns.Add(myDataColumn2);
mydt.Columns.Add(myDataColumn3);
string[,] mystr= { { "张三","开发部"}, { "李四", "销售部" }, { "王五", "技术支持部" }, { "赵六", "人力资源部" } };//定义二元字符串
for(int i = 0; i < mystr.Length / 2; i++)
{
DataRow myRow = mydt.NewRow();
myRow[0] = i+1;
myRow["name"] = mystr[i, 0];
myRow[2] = mystr[i, 1];
mydt.Rows.Add(myRow);
}
myds.AcceptChanges();//数据集接收数据
Console.WriteLine("更改前的数据");
outValues(myds);
DataTable mydt002 = mydt.Clone();
DataRow mydr = mydt002.NewRow();
mydt002.Rows.Add(new object[] { 6, "张三五", "支持部" });
mydt002.Rows.Add(new object[] { 7, "周全", "业务部" });
myds.Merge(mydt002);//将mydt002及其架构合并到myds中
Console.WriteLine("第二次更改后");
outValues(myds);
DataSet myds001 = myds.Copy();
DataSet myds002 = myds.Clone();
Console.WriteLine("copy的结果");
outValues(myds001);
Console.WriteLine("克隆的结果");
outValues(myds002);
Console.ReadKey();
}
public static void outValues(DataSet ds)//实现遍历DataSet
{
foreach(DataTable outdt in ds.Tables)
{
Console.WriteLine("表名称:"+outdt.TableName);
foreach(DataRow outdr in outdt.Rows)
{
foreach(DataColumn outDataColume in outdt.Columns)
Console.Write(outdr[outDataColume]+"\t");
Console.WriteLine();
}
}
}
}
}