Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx35 / System.ServiceModel.Web / System / ServiceModel / Configuration / InternalEnumValidator.cs / 1305376 / InternalEnumValidator.cs
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
namespace System.ServiceModel.Configuration
{
using System;
using System.ComponentModel;
using System.Configuration;
using System.Reflection;
using System.ServiceModel.Channels;
internal class InternalEnumValidator : ConfigurationValidatorBase
{
Type enumHelperType;
MethodInfo isDefined;
public InternalEnumValidator(Type enumHelperType)
{
this.enumHelperType = enumHelperType;
this.isDefined = this.enumHelperType.GetMethod("IsDefined", BindingFlags.Static | BindingFlags.NonPublic | BindingFlags.Public);
}
public override bool CanValidate(Type type)
{
return (this.isDefined != null);
}
public override void Validate(object value)
{
bool retVal = (bool) this.isDefined.Invoke(null, new object[] { value });
if (!retVal)
{
ParameterInfo[] isDefinedParameters = this.isDefined.GetParameters();
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidEnumArgumentException("value", (int) value, isDefinedParameters[0].ParameterType));
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DelayLoadType.cs
- AspNetHostingPermission.cs
- ExternalFile.cs
- WebEventTraceProvider.cs
- DbXmlEnabledProviderManifest.cs
- AddressAlreadyInUseException.cs
- HttpCachePolicyElement.cs
- InternalBufferOverflowException.cs
- GeneralTransform3DGroup.cs
- PriorityItem.cs
- WmlTextViewAdapter.cs
- DataViewSetting.cs
- DataBoundControl.cs
- PropertyChange.cs
- IdentityModelDictionary.cs
- XmlChildEnumerator.cs
- CollectionBase.cs
- OutputWindow.cs
- AudioFileOut.cs
- TypedReference.cs
- Int16KeyFrameCollection.cs
- DataGridColumnCollection.cs
- RightsManagementLicense.cs
- RedBlackList.cs
- ControlBindingsCollection.cs
- TypeDependencyAttribute.cs
- Root.cs
- CodeAttributeArgumentCollection.cs
- DynamicMethod.cs
- ReflectPropertyDescriptor.cs
- SqlCaseSimplifier.cs
- DataGridViewRowsRemovedEventArgs.cs
- DashStyle.cs
- ToolStripItemRenderEventArgs.cs
- ActivationServices.cs
- DirtyTextRange.cs
- XmlRawWriter.cs
- RouteTable.cs
- BasicKeyConstraint.cs
- PageThemeCodeDomTreeGenerator.cs
- EditingCommands.cs
- DataTableCollection.cs
- CultureSpecificStringDictionary.cs
- _NestedSingleAsyncResult.cs
- Int16AnimationUsingKeyFrames.cs
- CreateRefExpr.cs
- FunctionUpdateCommand.cs
- InstanceCreationEditor.cs
- ObjectViewListener.cs
- CursorInteropHelper.cs
- AuthenticationModuleElementCollection.cs
- WebColorConverter.cs
- XmlLanguage.cs
- MergeFailedEvent.cs
- TrustSection.cs
- ZeroOpNode.cs
- Icon.cs
- GenericIdentity.cs
- TranslateTransform.cs
- ApplicationInfo.cs
- ApplicationSecurityInfo.cs
- XPathException.cs
- MasterPageParser.cs
- BasicBrowserDialog.designer.cs
- AssemblyBuilder.cs
- QilIterator.cs
- DbDeleteCommandTree.cs
- AsyncResult.cs
- ObjectMemberMapping.cs
- DtdParser.cs
- Pkcs7Signer.cs
- Operators.cs
- BasicSecurityProfileVersion.cs
- TransportReplyChannelAcceptor.cs
- ThreadInterruptedException.cs
- ScriptManager.cs
- Size.cs
- Location.cs
- CompiledELinqQueryState.cs
- InstalledFontCollection.cs
- DefaultSerializationProviderAttribute.cs
- CalculatedColumn.cs
- TemplatedMailWebEventProvider.cs
- EntityDataSourceColumn.cs
- NotificationContext.cs
- UpdateManifestForBrowserApplication.cs
- DataGridViewRowStateChangedEventArgs.cs
- DataColumnCollection.cs
- IndentedWriter.cs
- TreeNode.cs
- WebHeaderCollection.cs
- ParseHttpDate.cs
- TextBlockAutomationPeer.cs
- URLMembershipCondition.cs
- TextParaLineResult.cs
- EntityDataSourceDesigner.cs
- DbCommandDefinition.cs
- IdentityReference.cs
- File.cs
- ContainerUtilities.cs