1

このエラーに対処する他のトピックを見てきましたが、私の状況に対応していると思われるものはありません。

まず、ローカルで実行すると、コードは完全に正常に動作します。

しかし、サーバーにアップロードすると、次のエラーが表示されます。

パラメータ '?PuserName' がコレクションに見つかりません。

C# コードは次のとおりです。

public DataSet GetEmployeeByUsername(string username)
        {
            string proc = "schema.GetEmployeeByUsername";
            MySqlParameter[] args = new MySqlParameter[1];
            args[0] = new MySqlParameter("?PuserName", MySqlDbType.VarChar);
            args[0].Value = username;
            return SQLDatasetCall(args, proc);
        }

 protected DataSet SQLDatasetCall(MySqlParameter[] sqlparams, string call)
        {
            string myConString = ConfigurationManager.AppSettings["mySql"];
            MySqlConnection MyConnection = new MySqlConnection(myConString);
            MySqlDataAdapter adapter = new MySqlDataAdapter();
            MyConnection.Open();
            MySqlCommand command = new MySqlCommand(call, MyConnection);
            command.CommandType = CommandType.StoredProcedure;
            if (sqlparams != null)
            {
                foreach (MySqlParameter param in sqlparams)
                {
                    command.Parameters.Add(param);
                }
            }
            DataSet ds = new DataSet();
            adapter.SelectCommand = command;
            adapter.Fill(ds);
            adapter.Dispose();
            MyConnection.Close();
            return ds;
        }

SQL コード:

delimiter |
create procedure GetEmployeeByUsername(in PuserName varchar(45))
begin
  select id,
      firstName,
      lastName,
      phone,
      address1,
      address2,
      city,
      state,
      zip,
      username,
      password,
      emptypeid
  from schema.tblemployees
  where
      username=PuserName;
end |
delimiter;
4

1 に答える 1

1

Microsoft Visual Web Developer は、「発行」メソッド中にファイルを正しく ftp していないことが判明しました。私はfilezillaをダウンロードし、ファイルを再度ftpしたところ、うまくいきました....

于 2009-01-04T18:48:28.463 に答える