Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Configuration / System / Configuration / StringValidator.cs / 1305376 / StringValidator.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 { public class StringValidator : ConfigurationValidatorBase { private int _minLength; private int _maxLength; private string _invalidChars; public StringValidator(int minLength) : this(minLength, int.MaxValue, null) { } public StringValidator(int minLength, int maxLength) : this(minLength, maxLength, null) { } public StringValidator(int minLength, int maxLength, string invalidCharacters) { _minLength = minLength; _maxLength = maxLength; _invalidChars = invalidCharacters; } public override bool CanValidate(Type type) { return (type == typeof(string)); } public override void Validate(object value) { ValidatorUtils.HelperParamValidation(value, typeof(string)); string data = value as string; int len = (data == null ? 0 : data.Length); if (len < _minLength) { throw new ArgumentException(SR.GetString(SR.Validator_string_min_length, _minLength)); } if (len > _maxLength) { throw new ArgumentException(SR.GetString(SR.Validator_string_max_length, _maxLength)); } // Check if the string contains any invalid characters if ((len > 0) && (_invalidChars != null) && (_invalidChars.Length > 0)) { char[] array = new char[_invalidChars.Length]; _invalidChars.CopyTo(0, array, 0, _invalidChars.Length); if (data.IndexOfAny(array) != -1) { throw new ArgumentException(SR.GetString(SR.Validator_string_invalid_chars, _invalidChars)); } } } } } // 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 { public class StringValidator : ConfigurationValidatorBase { private int _minLength; private int _maxLength; private string _invalidChars; public StringValidator(int minLength) : this(minLength, int.MaxValue, null) { } public StringValidator(int minLength, int maxLength) : this(minLength, maxLength, null) { } public StringValidator(int minLength, int maxLength, string invalidCharacters) { _minLength = minLength; _maxLength = maxLength; _invalidChars = invalidCharacters; } public override bool CanValidate(Type type) { return (type == typeof(string)); } public override void Validate(object value) { ValidatorUtils.HelperParamValidation(value, typeof(string)); string data = value as string; int len = (data == null ? 0 : data.Length); if (len < _minLength) { throw new ArgumentException(SR.GetString(SR.Validator_string_min_length, _minLength)); } if (len > _maxLength) { throw new ArgumentException(SR.GetString(SR.Validator_string_max_length, _maxLength)); } // Check if the string contains any invalid characters if ((len > 0) && (_invalidChars != null) && (_invalidChars.Length > 0)) { char[] array = new char[_invalidChars.Length]; _invalidChars.CopyTo(0, array, 0, _invalidChars.Length); if (data.IndexOfAny(array) != -1) { throw new ArgumentException(SR.GetString(SR.Validator_string_invalid_chars, _invalidChars)); } } } } } // 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
- TextParagraphProperties.cs
- StylusPointPropertyInfoDefaults.cs
- XsltCompileContext.cs
- InputScopeNameConverter.cs
- ExpressionPrefixAttribute.cs
- EUCJPEncoding.cs
- AnimationClockResource.cs
- _emptywebproxy.cs
- JournalEntryListConverter.cs
- ApplicationActivator.cs
- XmlObjectSerializerContext.cs
- ResXResourceReader.cs
- GridEntry.cs
- PropertyGridEditorPart.cs
- Msec.cs
- BooleanFunctions.cs
- LoadedOrUnloadedOperation.cs
- QilNode.cs
- EventRecord.cs
- HttpException.cs
- WebPartExportVerb.cs
- InstancePersistenceContext.cs
- VersionPair.cs
- DataSourceBooleanViewSchemaConverter.cs
- CultureInfoConverter.cs
- WebMessageEncodingBindingElement.cs
- KeyEvent.cs
- AbstractExpressions.cs
- CorruptStoreException.cs
- HandlerWithFactory.cs
- SspiWrapper.cs
- SqlInternalConnectionSmi.cs
- LinqExpressionNormalizer.cs
- AxisAngleRotation3D.cs
- MethodExpression.cs
- SafeCryptoKeyHandle.cs
- FormsAuthenticationModule.cs
- ListViewSelectEventArgs.cs
- UnicodeEncoding.cs
- CompiledAction.cs
- TemplateBindingExtensionConverter.cs
- PlanCompilerUtil.cs
- WindowsGrip.cs
- _ScatterGatherBuffers.cs
- StateBag.cs
- DurableTimerExtension.cs
- RequestResponse.cs
- HierarchicalDataSourceControl.cs
- Item.cs
- CloudCollection.cs
- PointConverter.cs
- HtmlForm.cs
- LoginCancelEventArgs.cs
- ObjectDataSourceSelectingEventArgs.cs
- TabPanel.cs
- QilPatternFactory.cs
- SignedXmlDebugLog.cs
- RoleService.cs
- SolidBrush.cs
- PointKeyFrameCollection.cs
- _AuthenticationState.cs
- ScalarConstant.cs
- GroupLabel.cs
- UnhandledExceptionEventArgs.cs
- GeneralTransformGroup.cs
- ReflectionServiceProvider.cs
- oledbconnectionstring.cs
- VariableAction.cs
- TemplateBuilder.cs
- StateItem.cs
- DataControlLinkButton.cs
- WindowsEditBox.cs
- Deserializer.cs
- StylusPointCollection.cs
- IfAction.cs
- SqlProfileProvider.cs
- BitmapDecoder.cs
- UIElement3DAutomationPeer.cs
- ServicePointManager.cs
- TextInfo.cs
- ByteAnimation.cs
- DataKeyArray.cs
- selecteditemcollection.cs
- ToolboxItemFilterAttribute.cs
- ActiveXSite.cs
- WebServiceFault.cs
- PolicyLevel.cs
- CompilerScope.Storage.cs
- EventLogPermissionEntryCollection.cs
- InfoCardRequestException.cs
- CryptoStream.cs
- ViewManager.cs
- DateTimeUtil.cs
- WpfMemberInvoker.cs
- MembershipPasswordException.cs
- DetailsViewInsertedEventArgs.cs
- DbProviderFactory.cs
- Viewport3DAutomationPeer.cs
- SoapMessage.cs
- CompilerTypeWithParams.cs