0
私はオンライン予約を作成しています。クライアントのページから、彼のトランザクションをgridviewで表示したいのですが、プログラムがエラーを返し、 "追加情報:プロシージャまたは関数 'JoinRoomSubPayment'パラメータ '@USERNAME'は提供されませんでした。ここデータベースからgridviewにテーブルを表示
は私のコードです:
SQL:
SELECT USERNAME, FIRST_NAME, LAST_NAME, BIRTHDAY, CONTACT_NUMBER, EMAIL_ADDRESS, HOME_ADDRESS FROM TBL_Client
WHERE USERNAME = @USERNAME
ClassDisplaySummary.cs:
public DataSet _JoinRoomSubPayment(string user){
conn.Open();
SqlCommand cmd = new SqlCommand("JoinRoomSubPayment", conn);
cmd.Parameters.Add("@USERNAME", SqlDbType.VarChar).Value = user;
cmd.ExecuteNonQuery();
cmd.CommandType = CommandType.StoredProcedure;
SqlDataAdapter da = new SqlDataAdapter(cmd);
ds.Clear();
da.Fill(ds, "_JoinRoomSubPayment");
conn.Close();
return ds;}
ClientPage.aspx.cs:
user = Session["username"].ToString();
SummaryGView.DataSource = cd._JoinRoomSubPayment(user).Tables["_JoinRoomSubPayment"];
SummaryGView.DataBind();
任意のヘルプは次のようになり高く評価された
あなたのクエリステートメントは正しいようですが、SPの使用法が適合しない可能性があります。 'CommandType.StoredProcedure'の後に' cmd.ExecuteNonQuery() 'を置くことを検討してください。そしてなぜ '_JoinRoomSubPayment'を' da.Fill(ds、 "_JoinRoomSubPayment") 'のソーステーブルとして使用するのですか? –
私はエラーを見ることができません、私に説明してくださいエラーは何ですか?私のSPは適合しません、なぜですか?ありがとう – Newbie10
VSプロジェクトでデバッグモードを使用し、コードのどの行がエラーをスローするかを説明します。 'ExecuteNonQuery()'メソッドは 'SqlCommand'に' CommandType'を定義する前に呼び出されているため意味がありませんので、あなたのSP割り当てが合わないことがわかります。ストアドプロシージャを作成するために 'CREATE PROCEDURE JoinRoomSubPayment'を使用しましたか? –