Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / Configuration / System / Configuration / CallbackValidatorAttribute.cs / 1 / 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
- PaperSource.cs
- DataGridItemAutomationPeer.cs
- DecimalKeyFrameCollection.cs
- FileEnumerator.cs
- PreservationFileWriter.cs
- FrameworkContentElement.cs
- StoragePropertyMapping.cs
- MappingModelBuildProvider.cs
- SimpleType.cs
- Codec.cs
- RegexMatchCollection.cs
- FtpCachePolicyElement.cs
- InternalException.cs
- FontDialog.cs
- StreamingContext.cs
- UriTemplatePathSegment.cs
- EntityContainer.cs
- Command.cs
- SiteMapProvider.cs
- Color.cs
- InkPresenterAutomationPeer.cs
- XPathNavigatorReader.cs
- Image.cs
- XpsViewerException.cs
- ConstructorExpr.cs
- XmlNodeChangedEventManager.cs
- MasterPageBuildProvider.cs
- ImageCodecInfo.cs
- SelectQueryOperator.cs
- PropertyEmitterBase.cs
- ToolTipService.cs
- SrgsDocumentParser.cs
- LineInfo.cs
- PrimitiveType.cs
- RtfFormatStack.cs
- HashHelper.cs
- UpWmlPageAdapter.cs
- ContextProperty.cs
- Aes.cs
- xml.cs
- JsonUriDataContract.cs
- BaseValidator.cs
- EntityClientCacheKey.cs
- TransactionBridge.cs
- FileInfo.cs
- BypassElement.cs
- PresentationSource.cs
- EventLogPermissionEntry.cs
- SqlCacheDependencySection.cs
- ObjectToIdCache.cs
- PageCodeDomTreeGenerator.cs
- InheritablePropertyChangeInfo.cs
- ScaleTransform.cs
- GeneralTransform3DGroup.cs
- HttpListenerRequest.cs
- DetailsViewCommandEventArgs.cs
- CustomMenuItemCollection.cs
- PrincipalPermission.cs
- PathSegment.cs
- InputLanguageManager.cs
- CreateUserErrorEventArgs.cs
- Attributes.cs
- SignedXml.cs
- SortAction.cs
- ListBoxItemWrapperAutomationPeer.cs
- TemplateApplicationHelper.cs
- RowSpanVector.cs
- KeyValuePairs.cs
- MethodBuilderInstantiation.cs
- ColorTransform.cs
- UriSection.cs
- ObjectDataSourceFilteringEventArgs.cs
- ObjectManager.cs
- AssociatedControlConverter.cs
- MetafileHeaderWmf.cs
- DefaultShape.cs
- MergeFilterQuery.cs
- QilStrConcat.cs
- DataStorage.cs
- DynamicPhysicalDiscoSearcher.cs
- XPathDocument.cs
- Merger.cs
- EnumConverter.cs
- InstanceHandle.cs
- BuildProvider.cs
- PlaceHolder.cs
- _FixedSizeReader.cs
- FileChangesMonitor.cs
- COM2PropertyPageUITypeConverter.cs
- InstanceValue.cs
- Label.cs
- SecureStringHasher.cs
- NavigationPropertyAccessor.cs
- DrawingDrawingContext.cs
- LinearGradientBrush.cs
- ToolStripItem.cs
- WebScriptClientGenerator.cs
- DataBindingExpressionBuilder.cs
- X509Certificate2.cs
- XPathNodeInfoAtom.cs