如何将数据从数据库显示到文本框

时间:2012-04-11 21:38:04

标签: c# database ms-access richtextbox

我有一个MS Access数据库,其中包含一个包含多个列的表。当我单击一个按钮时,我想从数据库的一列中获取字符串数据的行,并将其显示在一个富文本框中。我创建了以下代码:

 public static string DisplayListOfTeams()
    {
        //create a data table object to hold data retrieved from DB
        DataSet ds = new DataSet();

        //set SQL query to string variable
        String sqlQuery = "SELECT * FROM Team";

        //instantiate new OleDbDataAdapter object
        OleDbDataAdapter adpTeams = new OleDbDataAdapter(sqlQuery, aConnection);

        //add data in DB to the dataset object/table
        adpTeams.Fill(ds, "TeamTable");            

        string myValue;

        if (ds.Tables["TeamTable"].Rows.Count > 0)
        {
            //You must cast the value because it is an object
            myValue = (string)ds.Tables["TeamTable"].Rows[0][0];
        }
        else
        {
            myValue = "No Data found";
        }
        return myValue;
    }

 richTextBox1.Text = TeamsDA.DisplayListOfTeams();

我在以下行收到“无法将类型'System.Int32'的对象强制转换为'System.String'”错误:

myValue = (string)ds.Tables["TeamTable"].Rows[0][0];

我不确定我做错了什么或者如何去做我想做的事。

2 个答案:

答案 0 :(得分:3)

一个(两个?)单词(s?):ToString

答案 1 :(得分:1)

不要施放它......改为使用ToString()。

如果你施放它不会转换返回,它只会尝试发送类型。如果你使用ToString(),它将转换为正确的方式,如果可能的话。

如果我错了,请纠正我。但我确信ToString()会起作用。

编辑:

修复了区分大小写的错误。感谢digEmAll