c#学生注册系统帮助链接到SQL数据库

c#学生注册系统帮助链接到SQL数据库,c#,sql,C#,Sql,请帮助解决此编码错误?我刚接触C#和SQL,需要一些快速帮助 这是我已经拥有的代码,问题出现在我调试时,当我开始调试时,它会抛出一个错误 string ConnectionString = ConfigurationManager .ConnectionStrings["Student1"] .ConnectionString; 错误消息是 未处理空引用异常 无论我做什么,我

请帮助解决此编码错误?我刚接触C#和SQL,需要一些快速帮助

这是我已经拥有的代码,问题出现在我调试时,当我开始调试时,它会抛出一个错误

string ConnectionString = ConfigurationManager
                              .ConnectionStrings["Student1"]
                              .ConnectionString;
错误消息是

未处理空引用异常

无论我做什么,我似乎都无法纠正这个错误。有什么想法吗

static class Program
public static SqlConnection GetConnection
{
    get
    {
        string ConnectionString = ConfigurationManager
                                      .ConnectionStrings["Student1"]
                                      .ConnectionString;
        SqlConnection con = new SqlConnection(ConnectionString);
        con.Open();
        return con;
    }
}

您必须验证配置文件中是否有连接字符串

<configuration>
  <connectionStrings>
    <add name="Student1"
         connectionString="...."
         providerName="...." />
  </connectionStrings>
  ....

....

您必须验证配置文件中是否有连接字符串

<configuration>
  <connectionStrings>
    <add name="Student1"
         connectionString="...."
         providerName="...." />
  </connectionStrings>
  ....

....

除了其他答案之外,可能还需要指出出现此错误的原因

基本上你的代码在这里:

string ConnectionString = ConfigurationManager.ConnectionStrings["Student1"].ConnectionString;
正在尝试访问
ConfigurationManager.ConnectionString
集合,如果找不到值,此集合的索引器将返回NULL(某些其他集合将引发索引超出范围异常)

该值可能为NULL,因为您缺少app.config中的连接字符串-但由于您没有检查索引器返回的连接字符串对象是否为NULL,并且您正在尝试使用它的值,因此会引发NULL引用异常

好的支票是:

var conn = ConfigurationManager.ConnectionStrings["Student1"];

if(conn == null) throw new Exception("No connection string in config file"); // etc

string ConnectionString = conn.ConnectionString;

通过这种方式,如果连接字符串不存在,您可以抛出一个更有意义的异常。除了其他答案之外,还应该指出出现此错误的原因

基本上你的代码在这里:

string ConnectionString = ConfigurationManager.ConnectionStrings["Student1"].ConnectionString;
正在尝试访问
ConfigurationManager.ConnectionString
集合,如果找不到值,此集合的索引器将返回NULL(某些其他集合将引发索引超出范围异常)

该值可能为NULL,因为您缺少app.config中的连接字符串-但由于您没有检查索引器返回的连接字符串对象是否为NULL,并且您正在尝试使用它的值,因此会引发NULL引用异常

好的支票是:

var conn = ConfigurationManager.ConnectionStrings["Student1"];

if(conn == null) throw new Exception("No connection string in config file"); // etc

string ConnectionString = conn.ConnectionString;

这样,如果连接字符串不存在,您可以抛出更有意义的异常。您也应该发布App.config。App.config中是否有名为
Student1
的连接字符串?您也应该发布App.config。App.config中是否有名为
Student1
的连接字符串?