2012-09-27 31 views
0

我是一个在Visual Studio C#中工作的学生程序员,我试图从我的数据集访问信息并将数据插入到类中。无论如何,这并不是说我有一些我一直想尝试的个人项目。我曾尝试过几种在本网站上提及的方法;但是,不显示任何信息。我的代码看起来与此类似:Visual 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会为我绑定这些数据。很感谢任何形式的帮助。好的,不包括新的数据表。如果我有一个现有的数据集,我将如何使用它来填充我的班级。

+2

它看起来并不像你加载数据表的数据。 –

回答

0

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

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


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

填充DataSet中:

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

DataSet dataSet = new DataSet(); 
adapter.Fill(dataSet, "NameOfDataSet"); 
+0

请原谅我的无知,但是当您将数据集添加到项目中时,它不会设置所有访问信息和所有内容? – Kiko

+0

Kiko这不是问题,因为数据集只保留数据结构,你必须填充你的数据集(例如sql适配器),并在第二次使用foreach为了解析 –

+0

你介意给我一个示例,说明如何做到这一点?或者,也许我可以指点一些阅读材料呢?谢谢,麻烦您了。 – Kiko

0

您必须在MDT一些数据,你在MYLIST插入之前,MyClass的名单。

声明没有数据:

MyDataSet.MyDataTable MDT = new MyDataSet.MyDataTable();