Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- ExecutionEngineException.cs
- ListViewItemSelectionChangedEvent.cs
- DiagnosticsConfiguration.cs
- CodeSpit.cs
- FixedHighlight.cs
- ImageBrush.cs
- XmlSchemaAttribute.cs
- WebPartCloseVerb.cs
- EntityTypeEmitter.cs
- OdbcConnectionHandle.cs
- HttpWebResponse.cs
- JoinSymbol.cs
- WebConfigurationFileMap.cs
- ThumbAutomationPeer.cs
- ArgumentReference.cs
- AspProxy.cs
- LinqDataSourceContextData.cs
- UriTemplateTrieNode.cs
- DataGridComboBoxColumn.cs
- DataGridView.cs
- MethodToken.cs
- XmlRootAttribute.cs
- CreateParams.cs
- AddInAdapter.cs
- NativeRecognizer.cs
- RC2CryptoServiceProvider.cs
- METAHEADER.cs
- SRGSCompiler.cs
- CallbackTimeoutsBehavior.cs
- SelectionEditor.cs
- CompilerLocalReference.cs
- DataGridColumnCollection.cs
- X509Certificate2Collection.cs
- NegationPusher.cs
- LinqDataSourceInsertEventArgs.cs
- WebPartConnectVerb.cs
- SettingsBindableAttribute.cs
- SymbolEqualComparer.cs
- StackSpiller.Bindings.cs
- MetaColumn.cs
- Renderer.cs
- Vector3DKeyFrameCollection.cs
- TypeSystem.cs
- SafeSystemMetrics.cs
- QilIterator.cs
- ChangeToolStripParentVerb.cs
- DrawingVisualDrawingContext.cs
- BindToObject.cs
- MemoryMappedFileSecurity.cs
- XamlPointCollectionSerializer.cs
- KeyboardDevice.cs
- ActiveDocumentEvent.cs
- SurrogateSelector.cs
- UnsafeNativeMethodsPenimc.cs
- _FixedSizeReader.cs
- CharAnimationUsingKeyFrames.cs
- ReferentialConstraint.cs
- LabelLiteral.cs
- WebResponse.cs
- ComponentCollection.cs
- NavigationProperty.cs
- Propagator.Evaluator.cs
- ContentValidator.cs
- RightsManagementEncryptionTransform.cs
- SymbolTable.cs
- XamlDesignerSerializationManager.cs
- XamlHostingSection.cs
- Converter.cs
- ListViewGroupConverter.cs
- LiteralControl.cs
- AssemblySettingAttributes.cs
- MD5CryptoServiceProvider.cs
- RequestQueue.cs
- PropertyInfo.cs
- XmlStringTable.cs
- SqlDataSourceParameterParser.cs
- SrgsRule.cs
- SystemIPInterfaceStatistics.cs
- PersonalizablePropertyEntry.cs
- SharedDp.cs
- SqlDuplicator.cs
- FrameworkContextData.cs
- PasswordBox.cs
- SystemWebExtensionsSectionGroup.cs
- SqlMultiplexer.cs
- EditorPartChrome.cs
- WebAdminConfigurationHelper.cs
- CodeTypeConstructor.cs
- EnvironmentPermission.cs
- XmlUnspecifiedAttribute.cs
- DependencyPropertyKey.cs
- dataprotectionpermission.cs
- serverconfig.cs
- ManagementObjectCollection.cs
- Schema.cs
- PropertyChangedEventArgs.cs
- DropShadowBitmapEffect.cs
- MutexSecurity.cs
- AnchorEditor.cs
- CatalogPartChrome.cs