Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Configuration / System / Configuration / RegexStringValidator.cs / 1305376 / RegexStringValidator.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 RegexStringValidator : ConfigurationValidatorBase { private string _expression; private Regex _regex; public RegexStringValidator(string regex) { if (string.IsNullOrEmpty(regex)) { throw ExceptionUtil.ParameterNullOrEmpty("regex"); } _expression = regex; _regex = new Regex(regex, RegexOptions.Compiled); } public override bool CanValidate(Type type) { return (type == typeof(string)); } public override void Validate(object value) { ValidatorUtils.HelperParamValidation(value, typeof(string)); if (value == null) { return; } Match match = _regex.Match((string)value); if (!match.Success) { throw new ArgumentException(SR.GetString(SR.Regex_validator_error, _expression)); } } } } // 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 RegexStringValidator : ConfigurationValidatorBase { private string _expression; private Regex _regex; public RegexStringValidator(string regex) { if (string.IsNullOrEmpty(regex)) { throw ExceptionUtil.ParameterNullOrEmpty("regex"); } _expression = regex; _regex = new Regex(regex, RegexOptions.Compiled); } public override bool CanValidate(Type type) { return (type == typeof(string)); } public override void Validate(object value) { ValidatorUtils.HelperParamValidation(value, typeof(string)); if (value == null) { return; } Match match = _regex.Match((string)value); if (!match.Success) { throw new ArgumentException(SR.GetString(SR.Regex_validator_error, _expression)); } } } } // 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
- ColumnHeaderConverter.cs
- StrokeCollectionDefaultValueFactory.cs
- IdnElement.cs
- WebControlsSection.cs
- WmpBitmapEncoder.cs
- RegexCompiler.cs
- PrintPreviewDialog.cs
- MappingException.cs
- ViewPort3D.cs
- DetailsViewCommandEventArgs.cs
- EventDescriptor.cs
- ScrollBar.cs
- CacheVirtualItemsEvent.cs
- PartialArray.cs
- UriTemplateLiteralPathSegment.cs
- AspNetSynchronizationContext.cs
- ResourceDisplayNameAttribute.cs
- DrawingGroup.cs
- XmlAttributes.cs
- GridViewDeleteEventArgs.cs
- EventDescriptorCollection.cs
- FrameSecurityDescriptor.cs
- LinqDataSourceUpdateEventArgs.cs
- ComEventsSink.cs
- TaiwanCalendar.cs
- BrowsableAttribute.cs
- ObjRef.cs
- ExtensionDataReader.cs
- LoginStatusDesigner.cs
- NetworkCredential.cs
- TextTreeObjectNode.cs
- WebPartEditorApplyVerb.cs
- AssemblySettingAttributes.cs
- DocumentViewerBase.cs
- SessionEndingEventArgs.cs
- SizeConverter.cs
- SqlDataSourceSummaryPanel.cs
- DbProviderManifest.cs
- sqlcontext.cs
- ServiceOperation.cs
- Model3DGroup.cs
- ProxyWebPart.cs
- WorkflowOwnershipException.cs
- SerializationAttributes.cs
- PlatformNotSupportedException.cs
- ZipIOLocalFileBlock.cs
- RecognitionResult.cs
- MimeTypeAttribute.cs
- CollectionBase.cs
- Psha1DerivedKeyGenerator.cs
- TableChangeProcessor.cs
- AstNode.cs
- ValidationSummary.cs
- AssemblyBuilder.cs
- HtmlForm.cs
- PageFunction.cs
- SemaphoreSecurity.cs
- RawStylusSystemGestureInputReport.cs
- XmlArrayItemAttributes.cs
- LogReservationCollection.cs
- Int32CollectionValueSerializer.cs
- SqlDataSourceView.cs
- FunctionCommandText.cs
- SQLGuidStorage.cs
- PositiveTimeSpanValidator.cs
- DataGridViewRowStateChangedEventArgs.cs
- AssemblyBuilder.cs
- SQLByte.cs
- LinqExpressionNormalizer.cs
- EmptyImpersonationContext.cs
- BitmapEncoder.cs
- ProfileEventArgs.cs
- InternalConfigEventArgs.cs
- DbFunctionCommandTree.cs
- Int64KeyFrameCollection.cs
- HttpApplication.cs
- PageThemeParser.cs
- UniqueIdentifierService.cs
- UdpAnnouncementEndpoint.cs
- FrameworkEventSource.cs
- Wildcard.cs
- SqlMethodAttribute.cs
- TextCompositionEventArgs.cs
- AppSettingsExpressionEditor.cs
- SqlClientWrapperSmiStream.cs
- SqlGatherProducedAliases.cs
- _NestedSingleAsyncResult.cs
- UriTemplateClientFormatter.cs
- TagMapInfo.cs
- Translator.cs
- NotifyParentPropertyAttribute.cs
- ObjectSecurity.cs
- DataSetFieldSchema.cs
- XmlSchemaInclude.cs
- Polygon.cs
- EmbeddedObject.cs
- DataSourceXmlElementAttribute.cs
- UrlRoutingHandler.cs
- WinEventTracker.cs
- ExpressionEditorSheet.cs