C# 非静态字段、方法或属性需要对象引用';extractDB.Properties.Settings.MasterConnectionString.get';

C# 非静态字段、方法或属性需要对象引用';extractDB.Properties.Settings.MasterConnectionString.get';,c#,C#,由于“extractDB.Properties.Settings.MasterConnectionString”,我收到一条错误消息 我签入了app.config和settings.settings文件,这就是app.config给我的字符串。我甚至试着加入 namespace extractDB { class ConsoleApp2 { static void Main(string[] args) { string dog ="fancy";

由于“extractDB.Properties.Settings.MasterConnectionString”,我收到一条错误消息

我签入了app.config和settings.settings文件,这就是app.config给我的字符串。我甚至试着加入

namespace extractDB
{
class ConsoleApp2
{
    static void Main(string[] args)
    {
        string dog ="fancy";
        string shep = "shepherd";
        Add _add = new Add();
        _add.Ex(45, dog, shep);
    }
}
class Add
{
    public void Ex(int weight, string name, string breed)
    {

  using (SqlConnection con = new SqlConnection(extractDB.Properties.Settings.MasterConnectionString))
        {
            con.Open();
            try
            {
  using (SqlCommand command = new SqlCommand("INSERT INTO format(@Weight,@Name,@breed)", con))
                {
                    command.Parameters.Add(new SqlParameter("Weight", weight));
                    command.Parameters.Add(new SqlParameter("Name", name));
                    command.Parameters.Add(new SqlParameter("Breed", breed));
                    command.ExecuteNonQuery();
                }
            }

            catch
            {
                Console.WriteLine("count not inserted");
            }

        }

      }

  }
}
但它并没有消除错误消息


因此,是的,在这一点上有点不知所措。

使用配置文件存储数据库连接字符串的传统方法是使用web或app.config文件根目录下的
元素:

static void Ex(int weight, string name, string breed)
…而不是你所拥有的:

string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["NorthwindConnectionString"].ConnectionString;

您得到这个错误正是因为编译器所说的:要么您的
extracDB
对象没有实例化,要么您的
extractDB.Properties.Settings.MasterConnectionString
不是静态的。仔细检查您的代码以获取
extractDB.Properties.Settings.MasterConnectionString

您应该将其存储在app.config中,但是查看您的代码,您可能缺少:

试试这个:

extractDB.Properties.Settings.MasterConnectionString

啊,好的,我按照我最后一个代码的示例结束:string connStr=System.Configuration.ConfigurationManager.ConnectionStrings[“extractDB.Properties.Settings.MasterConnectionString”]。ConnectionString;使用(SqlConnection con=newsqlconnection(connStr))将其存储在app.config文件中?这是我当前在app.config文件中的内容:
extractDB.Properties.Settings.MasterConnectionString
string conn = extractDB.Properties.Settings.Default.MasterConnectionString;