Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / Configuration / System / Configuration / IntegerValidator.cs / 1 / IntegerValidator.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 { // // Type validators: Unsealed so users can derive to extend the funcionality without repeating it // ============================================================================================= public class IntegerValidator : ConfigurationValidatorBase { private enum ValidationFlags { None = 0x0000, ExclusiveRange = 0x0001, // If set the value must be outside of the range instead of inside } private ValidationFlags _flags = ValidationFlags.None; private int _minValue = int.MinValue; private int _maxValue = int.MaxValue; private int _resolution = 1; public IntegerValidator(int minValue, int maxValue) : this(minValue, maxValue, false, 1) { } public IntegerValidator(int minValue, int maxValue, bool rangeIsExclusive) : this(minValue, maxValue, rangeIsExclusive, 1) { } public IntegerValidator(int minValue, int maxValue, bool rangeIsExclusive, int resolution) { if (resolution <= 0) { throw new ArgumentOutOfRangeException("resolution"); } if (minValue > maxValue) { throw new ArgumentOutOfRangeException("minValue", SR.GetString(SR.Validator_min_greater_than_max)); } _minValue = minValue; _maxValue = maxValue; _resolution = resolution; _flags = rangeIsExclusive ? ValidationFlags.ExclusiveRange : ValidationFlags.None; } public override bool CanValidate(Type type) { return (type == typeof(int)); } public override void Validate(object value) { ValidatorUtils.HelperParamValidation(value, typeof(int)); ValidatorUtils.ValidateScalar((int)value, _minValue, _maxValue, _resolution, _flags == ValidationFlags.ExclusiveRange); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// 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 { // // Type validators: Unsealed so users can derive to extend the funcionality without repeating it // ============================================================================================= public class IntegerValidator : ConfigurationValidatorBase { private enum ValidationFlags { None = 0x0000, ExclusiveRange = 0x0001, // If set the value must be outside of the range instead of inside } private ValidationFlags _flags = ValidationFlags.None; private int _minValue = int.MinValue; private int _maxValue = int.MaxValue; private int _resolution = 1; public IntegerValidator(int minValue, int maxValue) : this(minValue, maxValue, false, 1) { } public IntegerValidator(int minValue, int maxValue, bool rangeIsExclusive) : this(minValue, maxValue, rangeIsExclusive, 1) { } public IntegerValidator(int minValue, int maxValue, bool rangeIsExclusive, int resolution) { if (resolution <= 0) { throw new ArgumentOutOfRangeException("resolution"); } if (minValue > maxValue) { throw new ArgumentOutOfRangeException("minValue", SR.GetString(SR.Validator_min_greater_than_max)); } _minValue = minValue; _maxValue = maxValue; _resolution = resolution; _flags = rangeIsExclusive ? ValidationFlags.ExclusiveRange : ValidationFlags.None; } public override bool CanValidate(Type type) { return (type == typeof(int)); } public override void Validate(object value) { ValidatorUtils.HelperParamValidation(value, typeof(int)); ValidatorUtils.ValidateScalar((int)value, _minValue, _maxValue, _resolution, _flags == ValidationFlags.ExclusiveRange); } } } // 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
- TextAnchor.cs
- Misc.cs
- BulletChrome.cs
- BooleanExpr.cs
- FilterQuery.cs
- DataGridViewImageCell.cs
- XhtmlTextWriter.cs
- CompositeFontParser.cs
- SizeIndependentAnimationStorage.cs
- ManualResetEvent.cs
- OrderByQueryOptionExpression.cs
- MobileListItemCollection.cs
- CLRBindingWorker.cs
- SpnegoTokenProvider.cs
- MinimizableAttributeTypeConverter.cs
- fixedPageContentExtractor.cs
- ZipIOFileItemStream.cs
- UserControlParser.cs
- CapabilitiesAssignment.cs
- ExportOptions.cs
- BamlMapTable.cs
- ClientConfigPaths.cs
- PropertyMapper.cs
- UnsafeNativeMethodsTablet.cs
- ConfigUtil.cs
- ConfigurationProperty.cs
- DataTableNewRowEvent.cs
- SelfIssuedAuthRSACryptoProvider.cs
- ReadOnlyPropertyMetadata.cs
- ImageList.cs
- DataMemberAttribute.cs
- TextAnchor.cs
- X509SubjectKeyIdentifierClause.cs
- AssemblyBuilderData.cs
- PeerCollaboration.cs
- UrlMappingsModule.cs
- WebHttpDispatchOperationSelectorData.cs
- ZipIOExtraFieldElement.cs
- ResourceAssociationTypeEnd.cs
- Logging.cs
- XPathDocumentNavigator.cs
- RC2.cs
- CertificateManager.cs
- CacheDict.cs
- ClientBuildManagerCallback.cs
- EntityDataSourceColumn.cs
- StylusButtonCollection.cs
- FlowPosition.cs
- LoginCancelEventArgs.cs
- TextServicesProperty.cs
- SwitchLevelAttribute.cs
- ProcessHostServerConfig.cs
- IISUnsafeMethods.cs
- Transform3D.cs
- DebuggerAttributes.cs
- WebControlAdapter.cs
- WeakEventTable.cs
- DbInsertCommandTree.cs
- PlanCompiler.cs
- Int32Animation.cs
- ModelItemDictionary.cs
- LOSFormatter.cs
- PackageRelationshipSelector.cs
- Int32AnimationBase.cs
- GridItemProviderWrapper.cs
- GridViewCellAutomationPeer.cs
- GPStream.cs
- LayoutDump.cs
- EFTableProvider.cs
- NativeStructs.cs
- SortQuery.cs
- PopOutPanel.cs
- HiddenField.cs
- MsmqIntegrationAppDomainProtocolHandler.cs
- TemplateKey.cs
- CompiledXpathExpr.cs
- BevelBitmapEffect.cs
- DownloadProgressEventArgs.cs
- XmlSequenceWriter.cs
- Stacktrace.cs
- RichTextBoxContextMenu.cs
- PointCollection.cs
- ChannelManagerBase.cs
- MULTI_QI.cs
- AttachedAnnotationChangedEventArgs.cs
- ResourcesBuildProvider.cs
- SingleKeyFrameCollection.cs
- input.cs
- panel.cs
- NavigationFailedEventArgs.cs
- StringReader.cs
- URIFormatException.cs
- SynchronizedDispatch.cs
- SapiInterop.cs
- Debug.cs
- DesigntimeLicenseContext.cs
- LogRecordSequence.cs
- CodeAttachEventStatement.cs
- DefaultValueConverter.cs
- MediaScriptCommandRoutedEventArgs.cs