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
- InvalidOleVariantTypeException.cs
- Button.cs
- CodeAssignStatement.cs
- PathStreamGeometryContext.cs
- ImageCodecInfo.cs
- TemplatingOptionsDialog.cs
- TemplateBuilder.cs
- SystemResources.cs
- LiteralTextParser.cs
- TextAdaptor.cs
- UIElementAutomationPeer.cs
- MemberRelationshipService.cs
- XPathParser.cs
- NavigationProperty.cs
- MenuScrollingVisibilityConverter.cs
- DocumentPageTextView.cs
- PersonalizationState.cs
- XmlSchemaSequence.cs
- X509Certificate2Collection.cs
- HandleCollector.cs
- HtmlInputText.cs
- XPathScanner.cs
- ProviderSettingsCollection.cs
- validationstate.cs
- DashStyles.cs
- HebrewNumber.cs
- Base64Stream.cs
- SafeFileHandle.cs
- BoundConstants.cs
- DataTableClearEvent.cs
- SourceItem.cs
- StringDictionary.cs
- HttpGetServerProtocol.cs
- SettingsPropertyNotFoundException.cs
- AuthenticationModuleElement.cs
- SettingsSection.cs
- ContentType.cs
- SeekStoryboard.cs
- ScrollContentPresenter.cs
- SponsorHelper.cs
- DefaultProxySection.cs
- configsystem.cs
- TdsEnums.cs
- SqlClientMetaDataCollectionNames.cs
- SqlBulkCopyColumnMappingCollection.cs
- DataService.cs
- HyperLinkColumn.cs
- COM2Enum.cs
- WriteTimeStream.cs
- PrinterSettings.cs
- ScrollableControlDesigner.cs
- EventInfo.cs
- keycontainerpermission.cs
- CryptoApi.cs
- SqlConnectionPoolProviderInfo.cs
- StylusDevice.cs
- SelectedPathEditor.cs
- PhysicalOps.cs
- SourceFilter.cs
- messageonlyhwndwrapper.cs
- FormatterServices.cs
- OrderedDictionary.cs
- _HTTPDateParse.cs
- ThreadBehavior.cs
- PassportIdentity.cs
- CellCreator.cs
- LinearKeyFrames.cs
- DragEvent.cs
- TextBox.cs
- ByteAnimation.cs
- ObjectKeyFrameCollection.cs
- ZipIOEndOfCentralDirectoryBlock.cs
- CacheDict.cs
- TextBoxRenderer.cs
- GridViewItemAutomationPeer.cs
- DiagnosticTrace.cs
- ParallelQuery.cs
- FrameworkElement.cs
- Color.cs
- ControlTemplate.cs
- SqlBooleanMismatchVisitor.cs
- FrameworkName.cs
- UnconditionalPolicy.cs
- Assert.cs
- AssemblyBuilder.cs
- ToolStripContentPanelRenderEventArgs.cs
- DesignerLoader.cs
- XmlWrappingReader.cs
- ADMembershipProvider.cs
- RightsManagementEncryptedStream.cs
- ReaderContextStackData.cs
- WebPartExportVerb.cs
- ViewBase.cs
- DataSourceSelectArguments.cs
- TypeUsageBuilder.cs
- X509ServiceCertificateAuthenticationElement.cs
- Resources.Designer.cs
- srgsitem.cs
- RecommendedAsConfigurableAttribute.cs
- UntypedNullExpression.cs