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
- sqlser.cs
- Latin1Encoding.cs
- nulltextnavigator.cs
- RequiredAttributeAttribute.cs
- TransformationRules.cs
- NoneExcludedImageIndexConverter.cs
- IntegrationExceptionEventArgs.cs
- EntityReference.cs
- JoinGraph.cs
- EndOfStreamException.cs
- ContractMapping.cs
- OptimalTextSource.cs
- Attributes.cs
- rsa.cs
- OletxResourceManager.cs
- LZCodec.cs
- ScrollViewer.cs
- RpcResponse.cs
- PolicyStatement.cs
- DiagnosticEventProvider.cs
- CommonObjectSecurity.cs
- DataGridViewEditingControlShowingEventArgs.cs
- TrustManagerPromptUI.cs
- LinqDataSourceHelper.cs
- BaseTemplateCodeDomTreeGenerator.cs
- ProfilePropertySettings.cs
- GuidConverter.cs
- AdRotator.cs
- MultiSelector.cs
- PrintDocument.cs
- ItemsControlAutomationPeer.cs
- ParameterCollectionEditor.cs
- StateMachineHistory.cs
- DataGridViewMethods.cs
- SQLDecimal.cs
- SQLDateTimeStorage.cs
- TdsEnums.cs
- RegionData.cs
- ViewCellSlot.cs
- IxmlLineInfo.cs
- DataGridColumnEventArgs.cs
- DoubleKeyFrameCollection.cs
- BStrWrapper.cs
- BrowsableAttribute.cs
- PerfService.cs
- Timer.cs
- SamlAttribute.cs
- CurrencyWrapper.cs
- PolyLineSegment.cs
- StoreItemCollection.Loader.cs
- CTreeGenerator.cs
- XmlSchemaGroup.cs
- ProtocolsConfigurationEntry.cs
- SvcMapFile.cs
- AxParameterData.cs
- DataControlImageButton.cs
- LeafCellTreeNode.cs
- RadioButtonRenderer.cs
- SqlTriggerContext.cs
- FixedStringLookup.cs
- TimeSpanSecondsOrInfiniteConverter.cs
- BookmarkCallbackWrapper.cs
- _RequestCacheProtocol.cs
- JapaneseCalendar.cs
- Int16Animation.cs
- GridItemCollection.cs
- AttributeEmitter.cs
- HostedElements.cs
- CallTemplateAction.cs
- XmlSchemaAnnotated.cs
- Currency.cs
- LocatorPartList.cs
- TableLayoutStyleCollection.cs
- RegexTree.cs
- RijndaelManagedTransform.cs
- TextWriterTraceListener.cs
- SpellCheck.cs
- Transform3DGroup.cs
- CriticalFinalizerObject.cs
- CompositeCollectionView.cs
- Constants.cs
- TextTreeRootTextBlock.cs
- TypeConverterHelper.cs
- MetaModel.cs
- ContactManager.cs
- CustomAssemblyResolver.cs
- HtmlWindow.cs
- CriticalExceptions.cs
- TargetControlTypeCache.cs
- GridItemPatternIdentifiers.cs
- StorageScalarPropertyMapping.cs
- XsltContext.cs
- RegexNode.cs
- MobileControlBuilder.cs
- CompilerState.cs
- ZipIOEndOfCentralDirectoryBlock.cs
- SerializableAttribute.cs
- SamlAudienceRestrictionCondition.cs
- MsdtcClusterUtils.cs
- FillErrorEventArgs.cs