Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Configuration / System / Configuration / IntegerValidator.cs / 1305376 / 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
- MetadataItemSerializer.cs
- ListItem.cs
- ComponentEditorForm.cs
- JumpTask.cs
- EndpointAddressMessageFilterTable.cs
- ManagementBaseObject.cs
- RijndaelManagedTransform.cs
- Window.cs
- EraserBehavior.cs
- CatalogZoneBase.cs
- assertwrapper.cs
- RequestNavigateEventArgs.cs
- ListDataBindEventArgs.cs
- FrameworkElementFactoryMarkupObject.cs
- ConnectionString.cs
- ExpandSegmentCollection.cs
- XPathSingletonIterator.cs
- AuthenticationService.cs
- ToggleButtonAutomationPeer.cs
- SQLMoney.cs
- VisualStateManager.cs
- ThousandthOfEmRealDoubles.cs
- WebConfigurationHost.cs
- ObjectContextServiceProvider.cs
- ContentPosition.cs
- OperationSelectorBehavior.cs
- ProtocolReflector.cs
- MD5HashHelper.cs
- SpotLight.cs
- ExpandableObjectConverter.cs
- MatrixIndependentAnimationStorage.cs
- SafeHandles.cs
- DefaultProxySection.cs
- CompositeControl.cs
- OrthographicCamera.cs
- MissingManifestResourceException.cs
- RuntimeConfig.cs
- ProfileSection.cs
- WebServiceErrorEvent.cs
- FileDialogPermission.cs
- CommonObjectSecurity.cs
- DataBoundLiteralControl.cs
- GroupLabel.cs
- WorkflowPrinting.cs
- TableLayoutStyle.cs
- HostedImpersonationContext.cs
- SchemaMerger.cs
- ClientApiGenerator.cs
- XmlNode.cs
- InheritablePropertyChangeInfo.cs
- Timer.cs
- CurrentChangingEventArgs.cs
- AutoGeneratedFieldProperties.cs
- SiteMapPath.cs
- EventLogEntryCollection.cs
- SystemIPInterfaceStatistics.cs
- DataSet.cs
- MessageTraceRecord.cs
- Matrix3DConverter.cs
- HashCodeCombiner.cs
- TextServicesDisplayAttribute.cs
- WindowsListView.cs
- FileSystemWatcher.cs
- RegexInterpreter.cs
- MenuCommand.cs
- SignatureDescription.cs
- SqlDataSourceQueryEditor.cs
- TreeNodeEventArgs.cs
- StartUpEventArgs.cs
- MetadataImporterQuotas.cs
- DirectoryNotFoundException.cs
- Point.cs
- EventlogProvider.cs
- DrawTreeNodeEventArgs.cs
- Visitor.cs
- Unit.cs
- DateTimeConstantAttribute.cs
- ErrorHandler.cs
- ScrollPattern.cs
- TextBox.cs
- ByteConverter.cs
- GridViewUpdateEventArgs.cs
- TabItem.cs
- MouseEvent.cs
- MergablePropertyAttribute.cs
- CacheOutputQuery.cs
- _emptywebproxy.cs
- XsltCompileContext.cs
- PropertyIDSet.cs
- VectorConverter.cs
- WebAdminConfigurationHelper.cs
- XmlSchemaAnnotation.cs
- XmlAttributeAttribute.cs
- CompositeScriptReference.cs
- DataList.cs
- DBNull.cs
- HttpTransportSecurity.cs
- QueryCreatedEventArgs.cs
- autovalidator.cs
- GeneralTransform3D.cs