0

Visual Studio 2010 からアプリケーションを起動すると、次のエラーが表示されます。

値を null にすることはできません。\r\nパラメータ名: ユーザー名

Global.asax.csこのメソッドのパラメーター送信者でこのエラーを確認できます。

    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の代わりにuid、のPassword代わりにpwd

さまざまなオプションについては、connectionstrings.comを参照してください。

于 2012-11-30T10:30:41.807 に答える
0

何らかの理由で、このエラーは Visual Studio からアプリケーションを実行した場合にのみ発生し、IIS にデプロイされた場合には発生しません。

ご協力ありがとうございました!

于 2012-12-12T08:25:22.050 に答える