Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Configuration / System / Configuration / SubclassTypeValidator.cs / 1305376 / SubclassTypeValidator.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Collections; using System.IO; using System.Reflection; using System.Security.Permissions; using System.Xml; using System.Collections.Specialized; using System.Globalization; using System.ComponentModel; using System.Security; using System.Text; using System.Text.RegularExpressions; namespace System.Configuration { // This class validates that the value is a subclass of a specified type public sealed class SubclassTypeValidator : ConfigurationValidatorBase { private Type _base; public SubclassTypeValidator(Type baseClass) { if (baseClass == null) { throw new ArgumentNullException("baseClass"); } _base = baseClass; } public override bool CanValidate(Type type) { return (type == typeof(Type)); } public override void Validate(object value) { if (value == null) { return; } // Make a check here since value.GetType() returns RuntimeType rather then Type if (!(value is Type)) { ValidatorUtils.HelperParamValidation(value, typeof(Type)); } if (!_base.IsAssignableFrom((Type)value)) { throw new ArgumentException(SR.GetString(SR.Subclass_validator_error, ((Type)value).FullName, _base.FullName)); } } } } // 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
- DataGridCellsPresenter.cs
- WebPartDeleteVerb.cs
- XmlElementAttribute.cs
- ConnectionsZone.cs
- DateBoldEvent.cs
- LayoutManager.cs
- filewebresponse.cs
- AlignmentXValidation.cs
- Stylesheet.cs
- Point3DAnimationBase.cs
- UICuesEvent.cs
- GlyphRunDrawing.cs
- LocatorPartList.cs
- MultiBindingExpression.cs
- ErrorActivity.cs
- BaseCodeDomTreeGenerator.cs
- UIElement3DAutomationPeer.cs
- TableFieldsEditor.cs
- AssemblyNameProxy.cs
- ToolStripProfessionalLowResolutionRenderer.cs
- AmbientLight.cs
- ManifestBasedResourceGroveler.cs
- FormViewInsertEventArgs.cs
- UIElementParaClient.cs
- ScriptModule.cs
- SByteConverter.cs
- SerializableAttribute.cs
- arabicshape.cs
- VectorCollection.cs
- IndexedEnumerable.cs
- MailBnfHelper.cs
- MergeFilterQuery.cs
- RectangleHotSpot.cs
- PackageStore.cs
- XpsDigitalSignature.cs
- OdbcConnectionHandle.cs
- DataGridCellEditEndingEventArgs.cs
- Effect.cs
- ListViewAutomationPeer.cs
- DataGridViewElement.cs
- EditingMode.cs
- WindowsFormsLinkLabel.cs
- PrePostDescendentsWalker.cs
- DataContractSerializerServiceBehavior.cs
- DocumentSequence.cs
- WebPartVerbsEventArgs.cs
- KeyGestureConverter.cs
- AtomParser.cs
- BehaviorEditorPart.cs
- ResXResourceSet.cs
- AuthStoreRoleProvider.cs
- PeerObject.cs
- RangeValidator.cs
- NameValueConfigurationElement.cs
- StyleXamlParser.cs
- EditorBrowsableAttribute.cs
- AnimationStorage.cs
- MorphHelper.cs
- XPathMultyIterator.cs
- XmlTextEncoder.cs
- AccessDataSourceView.cs
- Pkcs7Signer.cs
- PointValueSerializer.cs
- ReadOnlyHierarchicalDataSource.cs
- SmtpNtlmAuthenticationModule.cs
- HttpDebugHandler.cs
- DataGridViewTextBoxEditingControl.cs
- LoginView.cs
- Lock.cs
- Axis.cs
- HuffmanTree.cs
- AutoGeneratedFieldProperties.cs
- DialogResultConverter.cs
- FixedDocumentSequencePaginator.cs
- MenuAdapter.cs
- OdbcCommandBuilder.cs
- RangeExpression.cs
- Pointer.cs
- CounterSampleCalculator.cs
- ListManagerBindingsCollection.cs
- TextEditorParagraphs.cs
- DataSetViewSchema.cs
- Empty.cs
- HMACSHA1.cs
- ServiceDescriptions.cs
- StatusBarAutomationPeer.cs
- BuildManagerHost.cs
- ObjectListTitleAttribute.cs
- GiveFeedbackEvent.cs
- GroupStyle.cs
- DataGridViewCellValidatingEventArgs.cs
- DragEvent.cs
- RegularExpressionValidator.cs
- HtmlControl.cs
- SimpleExpression.cs
- DataGridBoolColumn.cs
- KeyEvent.cs
- ForeignConstraint.cs
- EmissiveMaterial.cs
- ProviderUtil.cs