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
- Glyph.cs
- FormattedText.cs
- SamlNameIdentifierClaimResource.cs
- Part.cs
- CommandPlan.cs
- RuntimeHandles.cs
- CodeTypeReferenceCollection.cs
- SchemaElementDecl.cs
- IdentityReference.cs
- LedgerEntry.cs
- BitmapSource.cs
- CollectionViewGroupRoot.cs
- ObjectTag.cs
- ParsedRoute.cs
- PageParserFilter.cs
- ToolStripItemClickedEventArgs.cs
- SmtpClient.cs
- _Connection.cs
- EventLogPermissionEntryCollection.cs
- XmlUrlResolver.cs
- SqlDataSourceView.cs
- ApplicationContext.cs
- ObjectDataSourceSelectingEventArgs.cs
- BlurBitmapEffect.cs
- SendingRequestEventArgs.cs
- Roles.cs
- XmlDataDocument.cs
- SecurityContextSecurityTokenParameters.cs
- Compilation.cs
- OracleInternalConnection.cs
- Underline.cs
- GZipDecoder.cs
- WebZone.cs
- PenContexts.cs
- XmlDataContract.cs
- SqlDataSourceView.cs
- Visual3DCollection.cs
- DockingAttribute.cs
- WeakRefEnumerator.cs
- BinaryReader.cs
- _ConnectStream.cs
- DefaultBindingPropertyAttribute.cs
- HighContrastHelper.cs
- DbProviderConfigurationHandler.cs
- SqlXml.cs
- TileBrush.cs
- CodeDOMProvider.cs
- WebPartUserCapability.cs
- CompModSwitches.cs
- DynamicRenderer.cs
- MultiTrigger.cs
- EmptyControlCollection.cs
- XmlSubtreeReader.cs
- ScalarConstant.cs
- BamlStream.cs
- ValidatorCollection.cs
- QuaternionRotation3D.cs
- DependencySource.cs
- RootProfilePropertySettingsCollection.cs
- TextEditorParagraphs.cs
- SchemaInfo.cs
- GridViewHeaderRowPresenter.cs
- ErrorRuntimeConfig.cs
- NameSpaceEvent.cs
- Lookup.cs
- SymbolMethod.cs
- ParagraphVisual.cs
- BuiltInExpr.cs
- AbstractSvcMapFileLoader.cs
- PingOptions.cs
- StdValidatorsAndConverters.cs
- ChangeConflicts.cs
- InputScope.cs
- EventQueueState.cs
- TransactionChannelFactory.cs
- TypeInfo.cs
- _BasicClient.cs
- Context.cs
- AddInControllerImpl.cs
- FontSourceCollection.cs
- ClientRolePrincipal.cs
- RuntimeIdentifierPropertyAttribute.cs
- RSAProtectedConfigurationProvider.cs
- XmlDownloadManager.cs
- Listener.cs
- RuntimeHelpers.cs
- PenContexts.cs
- DataControlFieldCollection.cs
- wmiprovider.cs
- TabControl.cs
- DataSetMappper.cs
- XsltSettings.cs
- Event.cs
- ToolStripDropTargetManager.cs
- SqlCommandBuilder.cs
- UpdateExpressionVisitor.cs
- Decoder.cs
- assertwrapper.cs
- SemanticKeyElement.cs
- ServicesSection.cs