예제 #1
0
파일: Validator.cs 프로젝트: ppetrov/Cchbc
        public static PermissionResult[] GetViolated(PermissionResult[] results)
        {
            if (results == null)
            {
                throw new ArgumentNullException(nameof(results));
            }
            if (results.Length == 0)
            {
                throw new ArgumentOutOfRangeException(nameof(results));
            }

            var totalViolations = 0;

            foreach (var result in results)
            {
                if (result != PermissionResult.Allow)
                {
                    totalViolations++;
                }
            }
            if (totalViolations > 0)
            {
                var violations = new PermissionResult[totalViolations];

                var index = 0;
                foreach (var result in results)
                {
                    if (result != PermissionResult.Allow)
                    {
                        violations[index++] = result;
                    }
                }

                return(violations);
            }
            return(new PermissionResult[0]);
        }
예제 #2
0
파일: Validator.cs 프로젝트: ppetrov/Cchbc
 public static PermissionResult ValidateNotEmpty(string value, string localizationKeyName)
 {
     return(string.IsNullOrWhiteSpace(value) ? PermissionResult.Deny(localizationKeyName) : PermissionResult.Allow);
 }