Значение переключателя из базы данных C # - PullRequest
0 голосов
/ 30 июня 2011

Я пытаюсь заставить мою программу считывать значение из определенной ячейки в моей базе данных Access, чтобы я мог присвоить это значение свойству text переключателя. Однако я получаю сообщение об ошибке, с которым не могу разобраться. Это мой код:

private void WindowsAnalysisQuiz_Load(object sender, EventArgs e)
{
    //declare connection string using windows security
    string cnString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Users\\Hannah\\Desktop\\WindowsAnalysisQuiz.accdb";

   //declare Connection, command and other related objects
   OleDbConnection conGet = new OleDbConnection(cnString);
   OleDbCommand cmdGet = new OleDbCommand();
   try
   {
       //open connection
       conGet.Open();

       cmdGet.CommandType = CommandType.Text;
       cmdGet.Connection = conGet;
       //cmdGet.CommansText = "SELECT 
       cmdGet.CommandText = "SELECT Question FROM WindowsAnalysisQuiz ORDER BY rnd()";

       OleDbDataReader reader = cmdGet.ExecuteReader();
       reader.Read();
       label1.Text = reader["Question"].ToString();
       radioButton.Text = cnString["Quiz"].Rows[0]["Correct Answer"].ToString();
       radioButton1.Text = reader["Answer2"].ToString();
       radioButton2.Text = reader["Answer3"].ToString();
       radioButton3.Text = reader["Answer4"].ToString();
       conGet.Close();
   }
}

У меня проблема со строкой, начинающейся с radioButton.Text. Очевидно, у него есть несколько недопустимых аргументов, и аргумент 1 не может преобразовать строку в int

Ответы [ 2 ]

0 голосов
/ 30 июня 2011

Похоже, что вы используете несколько разных RadioButton-ов, когда вам действительно нужен RadioButtonList.

Если у вас есть RadioButtonList, к нему легко привязать что-то, по сути, создать списокбазы данных или что-то еще), а затем привязать это к списку переключателей .. что-то вроде

        var de = new List<string>();
        de.Add("1");
        de.Add("2");
        de.Add("3");

        RadioButtonList1.DataSource = de;
        RadioButtonList1.DataBind();
0 голосов
/ 30 июня 2011

Разве ваш код не должен выглядеть примерно так:

radioButton.Text = reader["Correct Answer"].ToString();

И измените выражение select на:

cmdGet.CommandText = "SELECT Question, [Correct Answer], Answer2, Answer3, Answer4 FROM WindowsAnalysisQuiz ORDER BY rnd()";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...