获取有关DataSet中DataRelations的信息

时间:2012-03-08 12:31:31

标签: c# ado.net dataset dataadapter datarelation

使用数据适配器的FillSchema方法获取表结构

    using (SqlConnection sqlConn = new SqlConnection(connectionString))
    {
        var dataAdapter = new SqlDataAdapter();
        var dataSet = new DataSet();

        sqlConn.Open();

        string sqlSelectCommand = "select * from Projects;\nselect * from Staff"

        dataAdapter.SelectCommand = new SqlCommand(sqlSelectCommand, sqlConn);

        dataAdapter.FillSchema(dataSet, SchemaType.Source); 
        dataAdapter.Fill(dataSet);

        dataSet.Tables[0].TableName = "Projects";
        dataSet.Tables[1].TableName = "Staff";

        // create relations between the tables
        // is there an alternative way?
        var relation = new DataRelation("FK_Projects_Staff", dataSet.Tables["Staff"].Columns["ID"], dataSet.Tables["Projects"].Columns["Responsible_ID"], true);
        dataSet.Relations.Add(relation);

        // do some manipulations on data using projectsDataAdapter and staffDataAdapter
        // ...
    }

是否有类似的方法来填补所有相关表格的关系?

1 个答案:

答案 0 :(得分:1)

请查看以下链接是否可以为您提供帮助。

http://csharptutorial.com/how-to-create-a-dataset-programmatically/