Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- Int32Rect.cs
- DirectoryGroupQuery.cs
- ApplicationCommands.cs
- RawMouseInputReport.cs
- WebSysDescriptionAttribute.cs
- QueryCacheKey.cs
- CodePageUtils.cs
- Ray3DHitTestResult.cs
- SspiNegotiationTokenAuthenticator.cs
- EventLog.cs
- IPipelineRuntime.cs
- DataGridCell.cs
- ListBox.cs
- TimeSpanOrInfiniteValidator.cs
- ObjectCloneHelper.cs
- _UncName.cs
- VisualBasicSettingsHandler.cs
- PolyLineSegment.cs
- DictionaryEntry.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- _WinHttpWebProxyDataBuilder.cs
- DefaultParameterValueAttribute.cs
- SecurityToken.cs
- AttributeCollection.cs
- DurableDispatcherAddressingFault.cs
- RadioButtonList.cs
- ActivityTypeDesigner.xaml.cs
- CoTaskMemHandle.cs
- AppearanceEditorPart.cs
- Size.cs
- IChannel.cs
- SoapFaultCodes.cs
- ResolveMatches11.cs
- MetadataArtifactLoader.cs
- WebPartAuthorizationEventArgs.cs
- SafeFileMapViewHandle.cs
- ConnectionStringSettingsCollection.cs
- NumericPagerField.cs
- TypeViewSchema.cs
- UserMapPath.cs
- TabControlDesigner.cs
- DispatcherHookEventArgs.cs
- FillErrorEventArgs.cs
- InputReport.cs
- Queue.cs
- PathGeometry.cs
- DetailsViewUpdateEventArgs.cs
- AutoFocusStyle.xaml.cs
- NameNode.cs
- CommentEmitter.cs
- SpeechUI.cs
- XmlSequenceWriter.cs
- RelativeSource.cs
- CustomDictionarySources.cs
- webclient.cs
- Hex.cs
- ScopedKnownTypes.cs
- ShortcutKeysEditor.cs
- DataRowChangeEvent.cs
- RuleCache.cs
- ICollection.cs
- CacheChildrenQuery.cs
- VirtualPath.cs
- HwndProxyElementProvider.cs
- Validator.cs
- SelectedDatesCollection.cs
- AppDomain.cs
- TextTreeInsertUndoUnit.cs
- SigningCredentials.cs
- CalendarDay.cs
- SafeFindHandle.cs
- ErasingStroke.cs
- FastEncoderWindow.cs
- SystemIcons.cs
- Root.cs
- BindingBase.cs
- MetadataImporterQuotas.cs
- FontStyles.cs
- TextParagraphCache.cs
- _Connection.cs
- Workspace.cs
- WebPartTransformerCollection.cs
- tibetanshape.cs
- XPathDocumentNavigator.cs
- TaiwanLunisolarCalendar.cs
- nulltextnavigator.cs
- Polyline.cs
- Path.cs
- SmtpNtlmAuthenticationModule.cs
- NullRuntimeConfig.cs
- DecimalAnimationBase.cs
- Point.cs
- MyContact.cs
- Menu.cs
- ClientConfigurationHost.cs
- WindowsButton.cs
- FieldMetadata.cs
- UnionCqlBlock.cs
- VisualBrush.cs
- DecoderNLS.cs