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
- _SecureChannel.cs
- HtmlTableRow.cs
- SwitchElementsCollection.cs
- TextComposition.cs
- JsonReaderWriterFactory.cs
- HttpHandlersInstallComponent.cs
- FixedSOMPage.cs
- ConnectionProviderAttribute.cs
- DataGridViewSortCompareEventArgs.cs
- Deflater.cs
- ViewManagerAttribute.cs
- ValidatingPropertiesEventArgs.cs
- TripleDES.cs
- MouseActionConverter.cs
- WebRequestModulesSection.cs
- HttpHandlersSection.cs
- TransformValueSerializer.cs
- SystemInformation.cs
- UseLicense.cs
- ExpressionBuilderContext.cs
- EnumConverter.cs
- ApplicationDirectory.cs
- DataTableMapping.cs
- FieldTemplateUserControl.cs
- RegistryPermission.cs
- StringOutput.cs
- GenericsInstances.cs
- ManifestResourceInfo.cs
- BinaryObjectWriter.cs
- UseLicense.cs
- DodSequenceMerge.cs
- DefinitionUpdate.cs
- BooleanFunctions.cs
- RegionData.cs
- X509CertificateCollection.cs
- ProtocolsConfigurationEntry.cs
- StylusPlugInCollection.cs
- StringResourceManager.cs
- ToolStripComboBox.cs
- Adorner.cs
- HtmlListAdapter.cs
- ObjectDataSourceChooseMethodsPanel.cs
- SvcMapFile.cs
- ConnectionManagementElementCollection.cs
- CompilerError.cs
- CounterSampleCalculator.cs
- RemoteWebConfigurationHost.cs
- Profiler.cs
- SmiEventSink_DeferedProcessing.cs
- recordstatescratchpad.cs
- ConstructorBuilder.cs
- SignatureToken.cs
- RecipientInfo.cs
- XhtmlBasicListAdapter.cs
- MailAddressParser.cs
- FileSystemEventArgs.cs
- VBIdentifierName.cs
- ConnectivityStatus.cs
- FtpCachePolicyElement.cs
- LayoutInformation.cs
- Unit.cs
- RoleManagerSection.cs
- ClientType.cs
- Comparer.cs
- XhtmlConformanceSection.cs
- EntityStoreSchemaGenerator.cs
- Utils.cs
- FileCodeGroup.cs
- TextStore.cs
- CallTemplateAction.cs
- UpdateProgress.cs
- GlyphRunDrawing.cs
- MetabaseServerConfig.cs
- PopupEventArgs.cs
- UpdatePanelTrigger.cs
- SqlTopReducer.cs
- BasicHttpSecurity.cs
- FileDialogCustomPlacesCollection.cs
- Utils.cs
- LayoutManager.cs
- TemplatedWizardStep.cs
- BitmapFrameEncode.cs
- SQLDateTimeStorage.cs
- FixedDocumentSequencePaginator.cs
- DataStorage.cs
- MiniLockedBorderGlyph.cs
- LogLogRecordHeader.cs
- SessionSymmetricMessageSecurityProtocolFactory.cs
- OleDbPropertySetGuid.cs
- DiagnosticsConfiguration.cs
- OleDbInfoMessageEvent.cs
- DbConnectionPoolGroupProviderInfo.cs
- CapabilitiesRule.cs
- ScrollBarAutomationPeer.cs
- SequentialWorkflowHeaderFooter.cs
- SafeHandles.cs
- TimeIntervalCollection.cs
- DynamicValueConverter.cs
- RegexNode.cs
- FormsIdentity.cs