データベース内の列を更新しようとしているか、グリッドビューでチェックボックスにチェックが入っていません。また、更新はbutton_clickの後にのみ発生します。問題はおそらく私の構文ですので、誰かが私を修正することができれば、それは非常に感謝します。チェックボックスの値に応じて列を更新する
protected void ButtonAfTeHalen_Click(object sender, EventArgs e)
{
foreach (GridViewRow r in GridViewOrders.Rows)
{
if (((CheckBox)r.Cells[0].FindControl("CheckBoxATH")).Checked == true
&& (Label)r.Cells[3].FindControl("LabelOrderID") != null)
{
string conn2 = "Data Source=pc-...";
CheckBox checkBoxATH = (CheckBox)GridViewOrders.FindControl("CheckBoxATH");
Label orderID = (Label)r.Cells[3].FindControl("LabelOrderID");
LabelTestID.Visible = true;
LabelTestID.Text = orderID.Text.ToString();
System.Data.SqlClient.SqlConnection sqlConn10 = new System.Data.SqlClient.SqlConnection(conn2);
sqlConn10.Open();
System.Data.SqlClient.SqlCommand updateCommand =
new System.Data.SqlClient.SqlCommand("UPDATE tblOrders SET Status= " + checkBoxATH.Checked + " WHERE [email protected]", sqlConn10);
updateCommand.Parameters.AddWithValue("@orderID", LabelTestID.Text);
updateCommand.ExecuteNonQuery();
}
}
}
エラーは言う:オブジェクト参照がオブジェクトインスタンスに設定されていません
は、ここに私のコードを参照してください。
エラー@アップデートステートメント。しかし、ラベルに注文のIDが表示されます。選択されたすべてのIDではなく、グリッドビューの最も低いチェック済み注文のIDのみです。
よろしくお願いします。Mati
チェックヌル)とあなたが検索control.Andに有効な値を提供するかどうかもあなたはこのエラーを取得しているもののラインを教えて、ここに私のコードは、(必要であれば、最大投票)です。 – varadarajan
'GridViewRow r'変数を使用していないようです。 – jfs
@jfs:true、if((CheckBox)r.Cells [0] .FindControl( "CheckBoxATH"))。チェックした== true) {} '問題が残っています。まだオブジェクトが設定されていません... – Dieter