示例#1
0
        public HandleResult Execute(Action action)
        {
            var hr = new HandleResult();

            try
            {
                action();
                hr.Succeed = true;
            }
            catch (UserFriendlyException exception)
            {
                hr.ErrorMessage = exception.Message;
            }
            catch (AbpValidationException exception)
            {
                foreach (var item in exception.ValidationErrors)
                {
                    hr.ErrorMessage += string.Format("{0}<br/>", item);
                }
            }
            catch (AbpException exception)
            {
                hr.ErrorMessage = exception.Message;
            }
            catch (DbEntityValidationException exception)
            {
                foreach (var item2 in exception.EntityValidationErrors.SelectMany(item => item.ValidationErrors))
                {
                    hr.ErrorMessage += string.Format("{0}:{1}<br/>", item2.PropertyName, item2.ErrorMessage);
                }
            }
            catch (DbUpdateException exception)
            {
                hr.ErrorMessage += exception.InnerException.InnerException;
            }
            catch (Exception e)
            {
                hr.ErrorMessage = e.Message;
            }
            return(hr);
        }
示例#2
0
 public Release(Action Release)
 {
     _Release = Release;
 }