C# 创建app.config文件

C# 创建app.config文件,c#,mysql,connection-string,app-config,system.configuration,C#,Mysql,Connection String,App Config,System.configuration,我编写了这段代码,想知道如何从.config或.ini文件中调用某些数据。我已经研究过AppSettings和ConfigurationManager,但这对noob大脑来说太多了,无法计算:-) 我已将system.configuration引用类添加到引用类列表中。 基本上,我希望MySQL的变量存储在一个外部文件中,最终用户可以在以后更改该文件。我不能把整个代码放进去,因为它说我已经超过3000行了 DBServer = RemoteServer dataBase = myDatabas

我编写了这段代码,想知道如何从.config或.ini文件中调用某些数据。我已经研究过AppSettings和ConfigurationManager,但这对noob大脑来说太多了,无法计算:-)

我已将system.configuration引用类添加到引用类列表中。 基本上,我希望MySQL的变量存储在一个外部文件中,最终用户可以在以后更改该文件。我不能把整个代码放进去,因为它说我已经超过3000行了

DBServer = RemoteServer

dataBase = myDatabase

user = root

password = [the password here]
我已经用app.config尝试了以下代码,但仍然没有

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <connectionStrings>
    <add name="constring" connectionString="server=localhost; database=SchoolDB; user     id=root; password=Pa55w0rd;"/>
  </connectionStrings>
</configuration>
用这个

string constring = ConfigurationManager.ConnectionStrings["dbconnectionstring"].ConnectionString;
然后我得到了这个错误


“对象引用未设置为对象实例”

好的,这是主窗口。cs

string constring = "datasource=localhost;port=3306;username=root;password=Pa55w0rd";
public partial class Portal : Form
{      
    public Portal(string UserName)
    {
        InitializeComponent();
        lbl_username.Text = UserName;
        timer1.Start();
        txt_staff_password1.PasswordChar = '*';
        load_loan_laptops();            
    }
    DataTable dbdataset;

    void load_loan_laptops()
    {
        //string constring = "datasource=localhost;port=3306;username=root;    password=Pa55w0rd";
        string constring =     ConfigurationManager.ConnectionStrings["constring"].ConnectionString;
        string Query = "Select * from schooldb.loans where Avail = 'yes';";
        MySqlConnection conDataBase = new MySqlConnection(constring);
        MySqlCommand cmdDataBase = new MySqlCommand(Query, conDataBase);
        MySqlDataReader myReader;

        try
        {
            conDataBase.Open();
            myReader = cmdDataBase.ExecuteReader();

            while (myReader.Read())
            {
                string devices = myReader.GetString("Device_Name");
                cmb_acer_loan.Items.Add(devices);
            }
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
        conDataBase.Close();
    }

请找人帮助解决此问题。

问题:您的
app.config
文件具有
标记,而不是
标记

解决方案:
app.config
文件中将
替换为
,并将
替换为

试试这个:

app.config

  <?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <connectionStrings>
    <add name="constring" connectionString="datasource=localhost;port=3306;username=root;password=Pa55w0rd"/>
      </connectionStrings>
</configuration>

对不起,伙计。仍然没有。@user3051236:错误消息是什么,请给我确切的错误消息以及错误的来源。“对象引用未设置为对象实例”是我得到的错误。感谢这是一个调用main window.cs的登录表单。当主窗口打开时,它应该将MySQL表加载到组合框中。如果我使用硬代码,它将打开主窗口,但使用.config文件,它会给出错误。Cheers@user3051236:将您手动使用的相同的
连接字符串
放入
app.config
文件,然后尝试,请参阅我编辑的答案中的
app.config
文件。嗨,伙计们,有人能帮我吗。
string constring = ConfigurationManager.ConnectionStrings["constring"].ConnectionString;