0

GridView にデータベースのデータを入力し、ユーザーが "Cursussen" テーブルのどの部分を表示するかを選択できるようにしたいと考えています。これは、ドロップダウン ボックスでパラメーターの選択を変更することで実行できます。

エラー : メソッド "Add" のオーバーロードは 2 つの引数を取りません。

protected void Page_Load(object sender, EventArgs e)
{
    ConnectionStringSettings planner =
        ConfigurationManager.ConnectionStrings["CursusDatabase"];
    DbConnection connection = new SqlConnection(planner.ConnectionString);
    DbCommand cmd = connection.CreateCommand();
    cmd.CommandType = CommandType.Text;
    cmd.CommandText =
        "SELECT * FROM Cursussen " +
        "WHERE CursusId = @CursusId";
    cmd.Parameters.Add("CursusId", DropDownList1.SelectedValue); // <-- here

    connection.Open();
    DbDataReader rdr = cmd.ExecuteReader();
    DataTable planning = new DataTable();
    planning.Load(rdr);
    connection.Close();

    GridView1.DataSource = planning;
    GridView1.DataBind();
    }
}
4

3 に答える 3

5

編集:

コメントでOdedが指定したように、DbCommandを使用していることを見逃しました

var parameter = cmd.CreateParameter();
parameter.ParameterName = "CursusId";
parameter.Value = DropDownList1.SelectedValue;
cmd.Parameters.Add(parameter);
于 2012-10-12T10:10:22.203 に答える
0

使用してDbCommandいます-これをに変更するとSqlCommand、次のことができます。

cmd.Parameters.AddWithValue("CursusId", DropDownList1.SelectedValue);

それ以外の場合は、 :Addを取るメソッドを使用する必要があります。DbParameter

cmd.Parameters.Add(new DbParameter { ParameterName = "CursusId", 
                                     Value = DropDownList1.SelectedValue});
于 2012-10-12T10:16:11.060 に答える
0
Dim myParamList As New List(Of SqlParameter)()
Dim myParam As SqlParameter = Nothing

myParam = New SqlParameter("@X", SqlDbType.Int)
myParam.Value = Y
myParamList.Add(myParam)

次に、パラメータリストをコマンドに追加します。

于 2012-10-12T10:16:21.367 に答える