0

当我从 Visual Studio 2010 启动应用程序时,出现以下错误:

值不能为空。\r\n参数名称: 用户名

我可以Global.asax.cs在此方法的参数 sender 中看到此错误:

    void Application_Error(object sender, EventArgs e)
    {
    }

问题是我没有在任何地方使用用户名和我的 web.config

    <configuration>
      <connectionStrings>
        <add name="MYSQL"
             connectionString="Driver={MySQL ODBC 5.2w Driver};Server=server_name;Database=database_name;uid=my_user_id;pwd=my_pwd"
             providerName="System.Data.Odbc"/>
      </connectionStrings>
      <system.web>
         <compilation debug="true" targetFramework="4.0" />
      </system.web>
  </configuration>

欢迎任何帮助。

编辑:

更多信息:

我能看到的是:

sender.base.Profile.base.base.Session = '((System.Web.HttpApplication)(sender)).Session' threw an exception of type 'System.Web.HttpException' 

sender.Profile.base.LastActivityDate = '((System.Web.Profile.ProfileBase)(((ASP.global_asax)(sender)).Profile)).LastAct‌​ivityDate' threw an exception of type 'System.ArgumentNullException' 

sender.Profile.base.LastActivityDate.base = {"Value cannot be null.\r\nParameter name: username"}

编辑

这段代码没有任何问题,我也可以执行查询。

    void Application_Start(object sender, EventArgs e)
    {
        string ConnStr = System.Configuration.ConfigurationManager.ConnectionStrings["MYSQL"].ConnectionString;
        OdbcConnection con = new OdbcConnection(ConnStr);
        con.Open();
        con.Close();
     }
4

2 回答 2

1

您的连接字符串格式错误。

应该是:

Driver={MySQL ODBC 5.2w Driver};Server=server_name;Database=database_name;User=my_user_id;Password=my_pwd

User而不是uidPassword而不是pwd

有关不同选项,请参见connectionstrings.com

于 2012-11-30T10:30:41.807 回答
0

由于某种原因,此错误仅在我从 Visual Studio 运行应用程序时发生,而不是在将其部署在 IIS 中时发生。

感谢您的帮助!

于 2012-12-12T08:25:22.050 回答