public static void TryValidateParam([NotNull] Type value, [NotNull] Type expectedType, string paramName, string message = "") { if (value != expectedType) { message = CreateExceptionMessage(message, Resources.InvalidType); ExceptionThrower.ThrowArgumentInvalidException(message, paramName); } }
public static void TryValidateParam(Uri value, string paramName, string message = "") { if (Validate.TryValidateNull(value)) { message = CreateExceptionMessage(message, Resources.UriCannotBeNull); ExceptionThrower.ThrowArgumentInvalidException(message, paramName); } }
public static void TryValidateParam([NotNull] Guid value, string paramName, string message = "") { if (value.Equals(Guid.Empty)) { message = CreateExceptionMessage(message, Resources.GuidIsEmpty); ExceptionThrower.ThrowArgumentInvalidException(message, paramName); } }
public static void TryValidateParam(string value, [NotNull] Regex match, string paramName, string message = "") { TryValidateParam(value, paramName, message); if (match.IsMatch(value) == false) { message = CreateExceptionMessage(message, Resources.StringIsNotValid); ExceptionThrower.ThrowArgumentInvalidException(message, paramName); } }
public static void TryValidateParam(string value, StringType stringType, int minimumLength, int maximumLength, string paramName, string message = "") { //TODO: Add more string types. TryValidateParam(value, paramName, message); TryValidateParam(stringType, nameof(stringType), Resources.InvalidStringType); if (value.Length.IsInRange(minimumLength, maximumLength) == false) { message = CreateExceptionMessage( message, string.Format( CultureInfo.CurrentCulture, Resources.InvalidStringLengthAcceptableRange, minimumLength, maximumLength)); ExceptionThrower.ThrowArgumentOutOfRangeException(paramName, message); } // Final string validation switch (stringType) { case StringType.Email: if (value.IsEmailAddress() == false) { message = CreateExceptionMessage(message, Resources.InvalidEmailAddress); ExceptionThrower.ThrowArgumentInvalidException(message, paramName); } break; case StringType.Url: if (value.IsUrl() == false) { message = CreateExceptionMessage(message, Resources.InvalidUrlAddress); ExceptionThrower.ThrowArgumentInvalidException(message, paramName); } break; case StringType.NotSet: break; default: break; } }
public static void TryValidateObject <TException>(bool condition, string message = "") where TException : Exception, new() { if (string.Equals(typeof(TException).Name, nameof(Exception), StringComparison.Ordinal)) { ExceptionThrower.ThrowArgumentInvalidException( "Exception is not allowed to be used for this method. Please choose a more detailed Exception type.", nameof(TException)); } if (condition is false) { message = CreateExceptionMessage(message, Resources.ObjectValidationFailed); var ex = Activator.CreateInstance(typeof(TException), message).As <TException>(); throw ex; } }