1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------------------------
namespace System.ServiceModel.Configuration
{
using System;
using System.ComponentModel;
using System.Configuration;
internal class StandardRuntimeEnumValidator : ConfigurationValidatorBase
{
Type enumType;
public StandardRuntimeEnumValidator(Type enumType)
{
this.enumType = enumType;
}
public override bool CanValidate(Type type)
{
return (type.IsEnum);
}
public override void Validate(object value)
{
if (!Enum.IsDefined(enumType, value))
{
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidEnumArgumentException("value", (int)value, enumType));
}
}
}
}
|