public int Update(List <ROLEDC> objROLEs, bool updatePermissions, ref List <EXCEPTIONDC> lstExceptions) { int updatedCount = 0; DBConnection objConnection = new DBConnection(); ROLEDA objROLEDA = new ROLEDA(); try { foreach (ROLEDC objROLE in objROLEs) { objConnection.Open(true); try { updatedCount = objROLEDA.Update(objConnection, objROLE, updatePermissions); IsDirty = objROLEDA.IsDirty; objConnection.Commit(); } catch (Exception exp) { EXCEPTIONDC objExcption = new EXCEPTIONDC(); objExcption.FIELD_ID = objROLE.ROLE_ID; objExcption.EXCEPTION_MESSAGE = exp.Message; objExcption.STACK_TRACK = exp.StackTrace; lstExceptions.Add(objExcption); objConnection.Rollback(); } } if (lstExceptions.Count > 0) { throw new Exception("Excption Occure"); } } catch (Exception exp) { throw exp; } finally { objConnection.Close(); } return(updatedCount); }