現在、私はDataGrid内の行から(チェックボックスを介して)DataKeyを取得し、INT変数に代入してdatabse内のIndividualを更新するButton Clickイベントを持っています。私はチェックボックスを1つだけチェックしてアップデートを実行するとすべてうまく動作します。しかし、私はすべてのチェックボックスを選択し、これらすべてのDatakeysを取ると、私は1つのだけチェックボックスを選択するとevrythingが正常に動作言ったように、同じ変数グリッドビューから複数行のデータキーを取得
INT oNewParentID
に割り当てるためのオプションを持っているユーザーを必要としています。私は、すべてのチェックボックスで選択したすべてのデータキーまたはすべてのデータキーを取得する方法を尋ねており、上記の変数に保存して、選択されたすべての個人の更新を実行するよう求めています。ここで選択した1つのチェックボックスのために働いているこれまでのところ、私のボタンクリックイベントである:
protected void imgbtnReassgin_Click(object sender, ImageClickEventArgs e)
{
foreach (GridViewRow row in gvSalesmanCustomers.Rows)
{
CheckBox cb = (CheckBox)row.FindControl("chkSalesCustSelector");
if (cb != null && cb.Checked)
{
int oIndividualID = Convert.ToInt32((gvSalesmanCustomers.DataKeys[row.RowIndex].Value));
foreach (GridViewRow r in gvSalesmanByManager.Rows)
{
CheckBox chkBox = (CheckBox)r.FindControl("chkManagerSalesSelector");
if (chkBox != null && chkBox.Checked)
{
int oNewParentID = Convert.ToInt32((gvSalesmanByManager.DataKeys[r.RowIndex].Value));
Individual ind = new Individual();
ind.ReassignIndividual(oIndividualID, oNewParentID);
chkBox.Checked = false;
cb.Checked = false;
}
}
}
}
}
は彼女のは、ストアド・プロシージャ、私の更新です:
CREATE DEFINER=`root`@`%` PROCEDURE `reassign_Individual`(
IN oIndividualID int(11),
IN oNewParentID int(11)
)
BEGIN
Update intelliair.individual
set ParentID = oNewParentID
Where IndividualID = oIndividualID;END