示例#1
0
        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);
        }