在控制台应用程序中使用DataSet

时间:2016-11-13 20:32:55

标签: c# console dataset

我习惯使用DataSet和DataSet设计器在我的程序中工作。我做了很多特殊查询,这些查询在代码中都可以作为方法使用。在c#forms程序中,只需从DataSources窗格中拖动DataGridView,它就会创建表适配器的实例,并且您可以访问在设计器中创建的所有查询。 (as:this.jackstableadapter.update({parameters})。

我的问题是,你如何在控制台程序中这样做?无法在表单上拖动某些内容来创建表适配器的实例。我尝试用代码编写它,但我无法运行它。因为在Windows窗体程序中,设计人员在处理数据集时会生成一半的代码,但我不知道如何复制它,有人可以帮助我吗

1 个答案:

答案 0 :(得分:0)

DatSet可以在控制台应用程序中使用,但是如您所知,此处没有用户界面,因此您无法使用DataGridView,也没有设计师。因此,您可以像在C#后端代码中一样使用DataSetDataAdapter运行SQL查询。它在这里没有什么不同,使用了相同的汇编System.Data.dll。是的,你无法在控制台应用程序中拖放。

示例:

        var ds = new DataSet();
        var customersTable = ds.Tables.Add("Customers");
        customersTable.Columns.AddRange("FirstName", "LastName", "Id", "Address");
        customersTable.Rows.Add("Bob", "Sagget", 1, "123 Mockingbird Lane");
        customersTable.Rows.Add("John", "Doe", 2, "1600 Pennsylvanie Ave");
        customersTable.Rows.Add("Jane", "Doe", 3, "100 Main St");


foreach (DataTable table in dataSet.Tables)
{
    foreach (DataRow row in table.Rows)
    {
        foreach (DataColumn column in table.Columns)
        {
            object item = row[column];
            // read column and item
            Console.WriteLine("item ", item );
        }
    }
}

您也可以使用xml。