Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Configuration / System / Configuration / CallbackValidatorAttribute.cs / 1305376 / CallbackValidatorAttribute.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Configuration.Internal; using System.Collections; using System.Collections.Specialized; using System.Collections.Generic; using System.IO; using System.Reflection; using System.Security.Permissions; using System.Xml; using System.Globalization; using System.ComponentModel; using System.Security; using System.Text; namespace System.Configuration { [AttributeUsage(AttributeTargets.Property)] public sealed class CallbackValidatorAttribute : ConfigurationValidatorAttribute { private Type _type = null; private String _callbackMethodName = String.Empty; private ValidatorCallback _callbackMethod; public override ConfigurationValidatorBase ValidatorInstance { get { if (_callbackMethod == null) { if (_type == null) { throw new ArgumentNullException("Type"); } if (!String.IsNullOrEmpty(_callbackMethodName)) { MethodInfo methodInfo = _type.GetMethod(_callbackMethodName, BindingFlags.Public | BindingFlags.Static); if (methodInfo != null) { ParameterInfo[] parameters = methodInfo.GetParameters(); if ((parameters.Length == 1) && (parameters[0].ParameterType == typeof(Object))) { _callbackMethod = (ValidatorCallback)Delegate.CreateDelegate(typeof(ValidatorCallback), methodInfo); } } } } if (_callbackMethod == null) { throw new System.ArgumentException(SR.GetString(SR.Validator_method_not_found, _callbackMethodName)); } return new CallbackValidator(_callbackMethod); } } public CallbackValidatorAttribute() { } public Type Type { get { return _type; } set { _type = value; _callbackMethod = null; } } public String CallbackMethodName { get { return _callbackMethodName; } set { _callbackMethodName = value; _callbackMethod = null; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Configuration.Internal; using System.Collections; using System.Collections.Specialized; using System.Collections.Generic; using System.IO; using System.Reflection; using System.Security.Permissions; using System.Xml; using System.Globalization; using System.ComponentModel; using System.Security; using System.Text; namespace System.Configuration { [AttributeUsage(AttributeTargets.Property)] public sealed class CallbackValidatorAttribute : ConfigurationValidatorAttribute { private Type _type = null; private String _callbackMethodName = String.Empty; private ValidatorCallback _callbackMethod; public override ConfigurationValidatorBase ValidatorInstance { get { if (_callbackMethod == null) { if (_type == null) { throw new ArgumentNullException("Type"); } if (!String.IsNullOrEmpty(_callbackMethodName)) { MethodInfo methodInfo = _type.GetMethod(_callbackMethodName, BindingFlags.Public | BindingFlags.Static); if (methodInfo != null) { ParameterInfo[] parameters = methodInfo.GetParameters(); if ((parameters.Length == 1) && (parameters[0].ParameterType == typeof(Object))) { _callbackMethod = (ValidatorCallback)Delegate.CreateDelegate(typeof(ValidatorCallback), methodInfo); } } } } if (_callbackMethod == null) { throw new System.ArgumentException(SR.GetString(SR.Validator_method_not_found, _callbackMethodName)); } return new CallbackValidator(_callbackMethod); } } public CallbackValidatorAttribute() { } public Type Type { get { return _type; } set { _type = value; _callbackMethod = null; } } public String CallbackMethodName { get { return _callbackMethodName; } set { _callbackMethodName = value; _callbackMethod = null; } } } } // 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
- ProvideValueServiceProvider.cs
- UnitySerializationHolder.cs
- XpsFilter.cs
- RegistryExceptionHelper.cs
- TreeIterator.cs
- ConfigurationStrings.cs
- Point3DKeyFrameCollection.cs
- TextLineBreak.cs
- XmlQueryCardinality.cs
- DeleteHelper.cs
- NativeMethods.cs
- DataContractSerializerOperationBehavior.cs
- ComponentCache.cs
- ScriptIgnoreAttribute.cs
- OdbcRowUpdatingEvent.cs
- StyleCollectionEditor.cs
- VScrollBar.cs
- DataColumnMapping.cs
- SoapExtensionTypeElement.cs
- Preprocessor.cs
- StorageMappingItemLoader.cs
- ObjectParameter.cs
- AvTrace.cs
- _FtpDataStream.cs
- StringDictionary.cs
- MultipleViewProviderWrapper.cs
- MappingModelBuildProvider.cs
- AnimatedTypeHelpers.cs
- ListDependantCardsRequest.cs
- PlaceHolder.cs
- PackageDigitalSignatureManager.cs
- NativeMethods.cs
- ByteKeyFrameCollection.cs
- XhtmlTextWriter.cs
- ColorConverter.cs
- XmlSchemaFacet.cs
- Matrix.cs
- FontFamily.cs
- Util.cs
- PeerResolverSettings.cs
- Cursor.cs
- GridViewColumnCollection.cs
- TextElement.cs
- ObjectListFieldsPage.cs
- KnownBoxes.cs
- ServiceDiscoveryElement.cs
- SecUtil.cs
- MessageQueue.cs
- ContextMenu.cs
- EdmProperty.cs
- ThreadExceptionDialog.cs
- ScrollProviderWrapper.cs
- ManagementQuery.cs
- XamlDesignerSerializationManager.cs
- TextBoxBase.cs
- AttachedPropertyBrowsableForChildrenAttribute.cs
- FrameworkObject.cs
- ThreadExceptionEvent.cs
- LocalizedNameDescriptionPair.cs
- ThicknessAnimation.cs
- TraceLevelStore.cs
- BoolExpressionVisitors.cs
- Point3DIndependentAnimationStorage.cs
- ConfigUtil.cs
- RecognizerInfo.cs
- DataGridViewCheckBoxColumn.cs
- FixedSOMElement.cs
- TypedReference.cs
- TransformerConfigurationWizardBase.cs
- AccessDataSource.cs
- ClientRuntimeConfig.cs
- PointKeyFrameCollection.cs
- RepeaterItemEventArgs.cs
- Set.cs
- DependencyPropertyValueSerializer.cs
- HtmlInputButton.cs
- SqlStatistics.cs
- ClockController.cs
- _IPv4Address.cs
- ProgressBar.cs
- OraclePermission.cs
- SynchronousSendBindingElement.cs
- dataprotectionpermission.cs
- XmlSchemaComplexContentExtension.cs
- CookieProtection.cs
- remotingproxy.cs
- DecimalSumAggregationOperator.cs
- UserControl.cs
- DbProviderSpecificTypePropertyAttribute.cs
- DataSourceXmlElementAttribute.cs
- ParserExtension.cs
- SqlNode.cs
- ToolStripArrowRenderEventArgs.cs
- AssemblyNameProxy.cs
- DisposableCollectionWrapper.cs
- LayoutTableCell.cs
- SerializerDescriptor.cs
- InlineObject.cs
- MatrixAnimationUsingPath.cs
- Rectangle.cs