0

我是一名在 Visual Studios C# 中工作的学生程序员,我正在尝试从我的数据集中访问信息并将数据插入到一个类中。无论如何,这不是家庭作业,我只是有一些我一直想尝试的个人项目。我尝试了本网站上提到的几种方法;但是,不显示任何信息。我的代码与此类似:

class MyClass
{
    public string ColumnData1
    {
        get; set;
    }
    public int ColumnData2
    {
        get; set;
    }
    public string Display()
    {
        string MyString = ColumnData1 + ColumnData2.ToString();
        return MyString;
    }
}

我用它来将数据插入到类中:

private void MyForm_Load(object sender, EventArgs e)
{
    MyDataSet.MyDataTable MDT = new MyDataSet.MyDataTable();

    List<MyClass> MyList = new List<MyClass>();

    foreach (DataRow MyDataRow in MDT.Rows)
    {
        Mylist.Add(new MyClass()
                   {
                       ColumnData1 = (string)MyDataRow["Data1"],
                       ColumnData2 = (int)MyDataRow["Data2"]
                   {
    }

最后显示信息:

    textBox1.Text = Mylist[0].Display();
}

然而,最终什么都没有显示。这也不是我试图显示信息的唯一内容.. 就好像信息不存在一样。我没有收到任何错误,当我尝试在代码的插入部分添加“停止点”时,它只是跳过它。我还应该提到,我有许多文本框和列表框可以很好地从数据库中提取数据,当然 Visual Studios 会为我绑定这些。很感谢任何形式的帮助。

编辑:好的,不包括新数据表。如果我有一个现有的数据集,我将如何使用它来填补我的班级。

4

2 回答 2

0

在将数据插入 MyList,MyClass 列表之前,您必须在 MDT 中有一些数据。

无数据声明:

MyDataSet.MyDataTable MDT = new MyDataSet.MyDataTable();
于 2012-09-27T18:05:35.740 回答
0

这很正常,因为your DataTable is empty(您的创建实例)

MyDataSet.MyDataTable MDT = new MyDataSet.MyDataTable();//<------Empty


foreach (DataRow MyDataRow in MDT.Rows)
{
  ....
}

填充数据集:

string queryString = 
  "SELECT .... FROM YourTable";
SqlDataAdapter adapter = new SqlDataAdapter(queryString, connection);

DataSet dataSet = new DataSet();
adapter.Fill(dataSet, "NameOfDataSet");
于 2012-09-27T18:03:32.483 回答