Winforms 输入参数后从C#中的外部类获取连接字符串

Winforms 输入参数后从C#中的外部类获取连接字符串,winforms,sql-server-2008,c#-4.0,global-variables,connection-string,Winforms,Sql Server 2008,C# 4.0,Global Variables,Connection String,我有一个WinForm,它有两个文本框来输入ServerName和数据库,一个单选按钮用来在提供者之间切换,还有一个按钮用来根据输入构建连接字符串。 _ServerName和_DatabaseName是全局变量。 我想在表单外部构建连接字符串,并将结果返回到表单中的label控件, 我的外部类中的代码如下所示: public static string _ServerName { get; set; } public static string _Base { get; set;

我有一个WinForm,它有两个文本框来输入ServerName和数据库,一个单选按钮用来在提供者之间切换,还有一个按钮用来根据输入构建连接字符串。 _ServerName和_DatabaseName是全局变量。 我想在表单外部构建连接字符串,并将结果返回到表单中的label控件, 我的外部类中的代码如下所示:

    public static string _ServerName { get; set; }
    public static string _Base { get; set; }
    public static SqlConnection _Con { get; set; }
    static void ConOption1()
    {
        Global._Con = new SqlConnection();
        Global._Con.ConnectionString = @"data source=" + Global._ServerName + "; initial catalog=" + Global._Base + "; Integrated Security=True";
    }
我表格(表格1)中的代码为:


这里的问题是,我无法从Form1中调用conOption1以获取Label1.text中的内置字符串,谢谢您的帮助。

您没有将
conOption1
标记为公共


你所说的“我不能调用conOption1来获取构建的字符串”到底是什么意思?编译器不仅不会编译您的代码,而且还会指出确切的问题。问“错误在哪里”的问题是没有意义的,因为编译器已经告诉你错误在哪里。

谢谢你的回复,请考虑我对C是新的。我已将静态void ConOption1()更改为public void ConOption1(),编译器现在返回:“名称‘ConOption1’在当前上下文中不存在”@AlphaBird,您需要在调用ConOption之前添加类名和/或命名空间。我怀疑这会起作用:
Global.ConOption1()@Brad,无法在intellisens或Global.ConOption1()中获取MyWorkSpace.MyClass.ConOption1();要工作,这似乎是一个变量,而不是一个函数。@AlphaBird,该方法需要是公共的和静态的:
public static void ConOption1()
        private void button1_Click(object sender, EventArgs e)
    {
        Global._ServerName = textBox1.Text;
        Global._Base = textBox2.Text;
        ConOption1();
        label1.Text = Global._Con.ToString();
    }