从字符串或数组手动填充C#中的数据集或数据表

时间:2014-06-24 09:23:57

标签: c# asp.net dataset

我想用数据集中的数据编写业务逻辑。

数据将采用以下格式

AssociateId Action Time

1          Login     12/12/2012 20:33
2          Login     12/13/2012 20:33
1          Login     12/14/2012 20:33
2          Game page 12/15/2012 20:33
1          Home page 12/16/2012 20:33
1          Map       12/17/2012 20:33

我想将其转换为数据集,我不想进行数据库调用并从那里填充它。

我将它分配给一个字符串,并通过使用空格分割将其转换为数组。如何将该数组或此字符串作为一个整体转换为数据集或数据表?

2 个答案:

答案 0 :(得分:4)

您可以在内存中创建DataTable并将其添加到任何DataSet。类似的东西:

var myTable = new DataTable();
myTable.Columns.Add(new DataColumn("AssociateId"));
myTable.Columns.Add(new DataColumn("Action"));
myTable.Columns.Add(new DataColumn("Time"));

var row = myTable.NewRow();
row["AssociateId"] = 1;
row["Action"] = "Login";
row["Time"] = new DateTime(2012, 12, 12, 20, 33, 0);

但它真的需要成为DataTable吗?创建自定义对象似乎是一种更清晰,更健壮的方式将数据保存在内存中。简单的事情:

class MyClass
{
    public int AssociateID { get; set; }
    public string Action { get; set; }
    public DateTime Time { get; set; }
}

然后你可以创建一个列表:

var myList = new List<MyClass>();
myList.Add(new MyClass
{
    AssociateID = 1,
    Action = "Login",
    Time = new DateTime(2012, 12, 12, 20, 33, 0)
});

答案 1 :(得分:1)

首先需要填写所需数据的列表。 然后从该列表中填充数据集。

请关注链接,希望这对您有帮助。

How to fill a datatable with List<T>