Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- DataBindingExpressionBuilder.cs
- WebBrowser.cs
- VisualStyleElement.cs
- BitmapEffectInputConnector.cs
- ClientBuildManager.cs
- RuleRef.cs
- DoubleKeyFrameCollection.cs
- ParserStreamGeometryContext.cs
- Int64.cs
- RuntimeConfigLKG.cs
- TypeNameConverter.cs
- DiscoveryClientBindingElement.cs
- DetailsViewRowCollection.cs
- ScrollBar.cs
- _AutoWebProxyScriptWrapper.cs
- UnaryNode.cs
- MenuDesigner.cs
- SqlBooleanMismatchVisitor.cs
- SmiGettersStream.cs
- DictionaryBase.cs
- FormViewActionList.cs
- PKCS1MaskGenerationMethod.cs
- TableLayoutStyle.cs
- ZipIOExtraField.cs
- StylusPointPropertyInfo.cs
- ToolStripLocationCancelEventArgs.cs
- ClosableStream.cs
- CngProvider.cs
- Decimal.cs
- Compiler.cs
- ResizeGrip.cs
- PrefixHandle.cs
- JavascriptXmlWriterWrapper.cs
- Rect.cs
- Crypto.cs
- SystemDiagnosticsSection.cs
- ScaleTransform3D.cs
- ItemDragEvent.cs
- SignatureToken.cs
- LinkedList.cs
- TrackingValidationObjectDictionary.cs
- EncryptedData.cs
- XmlLoader.cs
- DataExpression.cs
- SmtpClient.cs
- BackgroundFormatInfo.cs
- SerializationInfo.cs
- PolicyChain.cs
- RadioButton.cs
- NetMsmqSecurityElement.cs
- SecurityTokenSpecification.cs
- DataAdapter.cs
- XamlTreeBuilderBamlRecordWriter.cs
- ValueType.cs
- StateWorkerRequest.cs
- Wizard.cs
- ServiceDocument.cs
- ObjectCloneHelper.cs
- ColorConverter.cs
- MimeWriter.cs
- SqlCaseSimplifier.cs
- ObjectHandle.cs
- DropShadowEffect.cs
- Compress.cs
- StrokeRenderer.cs
- ClientBuildManagerCallback.cs
- ListenerChannelContext.cs
- ISAPIWorkerRequest.cs
- KeyPullup.cs
- DrawingVisual.cs
- ConditionCollection.cs
- SoapMessage.cs
- FileLogRecord.cs
- HTMLTagNameToTypeMapper.cs
- WindowsImpersonationContext.cs
- WebDescriptionAttribute.cs
- TCPListener.cs
- WebPartEditorOkVerb.cs
- IdentifierCreationService.cs
- HealthMonitoringSectionHelper.cs
- TextEditorCopyPaste.cs
- SafeEventLogWriteHandle.cs
- _DomainName.cs
- HostedElements.cs
- FtpCachePolicyElement.cs
- ProcessModule.cs
- DiscoveryExceptionDictionary.cs
- Propagator.cs
- SpellCheck.cs
- UpdatePanel.cs
- EventDescriptor.cs
- InternalTypeHelper.cs
- BitmapEffectState.cs
- WebProxyScriptElement.cs
- ItemMap.cs
- CommandManager.cs
- InstancePersistenceCommand.cs
- SerializableReadOnlyDictionary.cs
- Propagator.Evaluator.cs
- SingleTagSectionHandler.cs