private void InserisciAssociazioni() { DataTable o_Dt = (DataTable)Session["Edifici"]; try { foreach (DataRow riga in o_Dt.Rows) { bool esegui = false; string funzione = ""; int valore = 0; if (riga.RowState == DataRowState.Deleted) { funzione = "Delete"; esegui = true; valore = Convert.ToInt32(riga["id", DataRowVersion.Original].ToString()); } if (riga.RowState == DataRowState.Added) { funzione = "Insert"; esegui = true; valore = Convert.ToInt32(riga["id", DataRowVersion.Default].ToString()); } if (esegui) { Classi.ClassiDettaglio.Edificio _Edificio = new TheSite.Classi.ClassiDettaglio.Edificio(Context.User.Identity.Name); S_Controls.Collections.S_ControlsCollection _SColl = new S_Controls.Collections.S_ControlsCollection(); S_Controls.Collections.S_Object s_Ruolo = new S_Controls.Collections.S_Object(); s_Ruolo.ParameterName = "p_Ruolo_Id"; s_Ruolo.DbType = ApplicationDataLayer.DBType.CustomDBType.Integer; s_Ruolo.Direction = ParameterDirection.Input; s_Ruolo.Index = 0; s_Ruolo.Value = itemId; S_Controls.Collections.S_Object s_Edificio_Id = new S_Controls.Collections.S_Object(); s_Edificio_Id.ParameterName = "p_Edificio_Id"; s_Edificio_Id.DbType = ApplicationDataLayer.DBType.CustomDBType.Integer; s_Edificio_Id.Direction = ParameterDirection.Input; s_Edificio_Id.Index = 1; s_Edificio_Id.Value = valore; S_Controls.Collections.S_Object s_Operazione = new S_Object(); s_Operazione.ParameterName = "p_Operazione"; s_Operazione.DbType = ApplicationDataLayer.DBType.CustomDBType.VarChar; s_Operazione.Direction = ParameterDirection.Input; s_Operazione.Index = 2; s_Operazione.Value = funzione; S_Controls.Collections.S_Object s_IdOut = new S_Object(); s_IdOut.ParameterName = "p_IdOut"; s_IdOut.DbType = ApplicationDataLayer.DBType.CustomDBType.Integer; s_IdOut.Direction = ParameterDirection.Output; s_IdOut.Index = 3; _SColl.Add(s_Ruolo); _SColl.Add(s_Edificio_Id); _SColl.Add(s_Operazione); _SColl.Add(s_IdOut); _Edificio.UpdateRuoliEdifici(_SColl); } } } catch (Exception ex) { string s_Err = ex.Message.ToString().ToUpper(); PanelMess.ShowError(s_Err, true); } }