0

グリッドビューにバインドする前に、データセットを変更する必要があります。
完全なコードブロックをウォークスルーし、dsEmployeeOrgにカーソルを合わせると、そのレコードは変更されていないように見えます。ここで何が欠けていますか?

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

                DataSet dsEmployeeOrg = eCorporateStaffMgr.GetEmployeeAccessLevel(oEmp);
                DataTable dt = dsEmployeeOrg[0];

                string sManagerID = "";
                string sSupervisorID = "";
                string sEmployeeID = "";

                for (int i = 0; i < dsEmployeeOrg.Tables[0].Rows.Count; i++)
                {
                    sManagerID = dt.Rows[i].ItemArray[3].ToString().Trim();
                    sSupervisorID = dt.Rows[i].ItemArray[4].ToString().Trim();
                    sEmployeeID = dt.Rows[i].ItemArray[5].ToString().Trim();

                    if ((sManagerID.ToString().Trim() != sSupervisorID.ToString().Trim()) && (sManagerID.ToString().Trim() != sEmployeeID.ToString().Trim()))
                    {
                        if (sSupervisorID.ToString().Trim() == sEmployeeID.ToString().Trim())
                        {
                            // This is a Supervisor record
                            dt.Rows[i].ItemArray[2] = "1111";
                        }
                        else if (sSupervisorID.ToString().Trim() != sEmployeeID.ToString().Trim())
                        {
                            //This is a Employee record
                            dt.Rows[i].ItemArray[2] = "0000";
                        }
                    }
                }
4

1 に答える 1

1

以下のようにコードを変更してください

DataSet dsEmployeeOrg = eCorporateStaffMgr.GetEmployeeAccessLevel(oEmp);
DataTable dt = dsEmployeeOrg[0];
string sManagerID = "";
string sSupervisorID = "";
string sEmployeeID = "";

for (int i = 0; i < dsEmployeeOrg.Tables[0].Rows.Count; i++)
{
   sManagerID = dt.Rows[i].ItemArray[3].ToString().Trim();
   sSupervisorID = dt.Rows[i].ItemArray[4].ToString().Trim();
   sEmployeeID = dt.Rows[i].ItemArray[5].ToString().Trim();

   if ((sManagerID.ToString().Trim() != sSupervisorID.ToString().Trim()) && (sManagerID.ToString().Trim() != sEmployeeID.ToString().Trim()))
   {
       if (sSupervisorID.ToString().Trim() == sEmployeeID.ToString().Trim())
       {
          // This is a Supervisor record
          dt.Rows[i][2] = "1111";
       }
       else if (sSupervisorID.ToString().Trim() != sEmployeeID.ToString().Trim())
       {
          //This is a Employee record
          dt.Rows[i][2] = "0000";
       }
   }
}
于 2012-10-18T22:07:01.703 に答える