Почему вылазит ошибка "Имя ConfigurationManager не существует в текущем контексте" в строке:
Код:
string constr = ConfigurationManager.ConnectionStrings["conString"].ConnectionString;
полный код:
Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Configuration;
namespace WindowsFormsApp13
{
public partial class Form1 : Form
{
static int index = 0;
struct Question { public string question; }
struct Option { public string option1, option2, option3, option4; }
public Form1()
{
InitializeComponent();
GenerateQuestionsOptions(index);
}
private void btnNext_Click(object sender, EventArgs e)
{
if (index < PopulateQuestions().Rows.Count - 1)
{
index++;
GenerateQuestionsOptions(index);
}
}
private void btnPrevious_Click(object sender, EventArgs e)
{
if (index > 0)
{
index--;
GenerateQuestionsOptions(index);
}
}
public void GenerateQuestionsOptions(int index)
{
Question question = new Question();
question.question = PopulateQuestions().Rows[index]["QuestionDescription"].ToString();
Option options = new Option();
options.option1 = PopulateQuestions().Rows[index]["OptionOne"].ToString();
options.option2 = PopulateQuestions().Rows[index]["OptionTwo"].ToString();
options.option3 = PopulateQuestions().Rows[index]["OptionThree"].ToString();
options.option4 = PopulateQuestions().Rows[index]["OptionFour"].ToString();
List<string> optionsList = new List<string>();
optionsList.Add(options.option1);
optionsList.Add(options.option2);
optionsList.Add(options.option3);
optionsList.Add(options.option4);
List<string> shuffledOptions = optionsList.OrderBy(a => Guid.NewGuid()).ToList();
lblQuestion.Text = (index + 1) + " : " + question.question.ToUpper();
rbOption1.Text = shuffledOptions[0];
rbOption2.Text = shuffledOptions[1];
rbOption3.Text = shuffledOptions[2];
rbOption4.Text = shuffledOptions[3];
}
private DataTable PopulateQuestions()
{
DataTable dt = new DataTable();
string constr = ConfigurationManager.ConnectionStrings["conString"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand("SELECT * FROM QuestionTable", con))
{
using (SqlDataAdapter da = new SqlDataAdapter(cmd))
{
con.Open();
da.Fill(dt);
con.Close();
}
}
}
return dt;
}
}
}
XML:
Код:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
</startup>
<connectionStrings>
<add name="conString" connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Users\User\source\repos\WindowsFormsApp13\WindowsFormsApp13\Database1.mdf;Integrated Security=True" />
</connectionStrings>
</configuration>
Гуглил правильное написание, вроде все так же, как написал я.
Библиотека Configuration есть