Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / Configuration / TagMapInfo.cs / 2 / TagMapInfo.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System; using System.Xml; using System.Configuration; using System.Collections.Specialized; using System.Collections; using System.IO; using System.Text; using System.Web.Util; using System.Web.UI; using System.Web.Compilation; using System.Threading; using System.Web.Configuration; using System.Security.Permissions; [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class TagMapInfo : ConfigurationElement { private static ConfigurationPropertyCollection _properties; private static readonly ConfigurationProperty _propTagTypeName = new ConfigurationProperty("tagType", typeof(string), null, null, StdValidatorsAndConverters.NonEmptyStringValidator, ConfigurationPropertyOptions.IsRequired | ConfigurationPropertyOptions.IsKey); private static readonly ConfigurationProperty _propMappedTagTypeName = new ConfigurationProperty("mappedTagType", typeof(string), null, null, StdValidatorsAndConverters.NonEmptyStringValidator, ConfigurationPropertyOptions.IsRequired); static TagMapInfo() { _properties = new ConfigurationPropertyCollection(); _properties.Add(_propTagTypeName); _properties.Add(_propMappedTagTypeName); } internal TagMapInfo() { } public TagMapInfo(String tagTypeName, String mappedTagTypeName) : this() { TagType = tagTypeName; MappedTagType = mappedTagTypeName; } public override bool Equals(object o) { TagMapInfo tm = o as TagMapInfo; return StringUtil.Equals(TagType, tm.TagType) && StringUtil.Equals(MappedTagType, tm.MappedTagType); } public override int GetHashCode() { return TagType.GetHashCode() ^ MappedTagType.GetHashCode(); } protected override ConfigurationPropertyCollection Properties { get { return _properties; } } [ConfigurationProperty("mappedTagType")] [StringValidator(MinLength = 1)] public string MappedTagType { get { return (string)base[_propMappedTagTypeName]; } set { base[_propMappedTagTypeName] = value; } } [ConfigurationProperty("tagType", IsRequired = true, IsKey = true, DefaultValue = "")] [StringValidator(MinLength = 1)] public string TagType { get { return (string)base[_propTagTypeName]; } set { base[_propTagTypeName] = value; } } void Verify() { if (String.IsNullOrEmpty(TagType)) { throw new ConfigurationErrorsException( SR.GetString( SR.Config_base_required_attribute_missing, "tagType")); } if (String.IsNullOrEmpty(MappedTagType)) { throw new ConfigurationErrorsException( SR.GetString( SR.Config_base_required_attribute_missing, "mappedTagType")); } } protected override bool SerializeElement(XmlWriter writer, bool serializeCollectionKey) { Verify(); return base.SerializeElement(writer, serializeCollectionKey); } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DecoratedNameAttribute.cs
- PathSegmentCollection.cs
- NativeMethods.cs
- ModelTreeManager.cs
- MonitorWrapper.cs
- AccessorTable.cs
- ISO2022Encoding.cs
- TimeSpanMinutesConverter.cs
- LocalizableResourceBuilder.cs
- ProtocolsConfiguration.cs
- TableLayoutStyle.cs
- PolyLineSegment.cs
- FixUp.cs
- FolderLevelBuildProviderCollection.cs
- PageSetupDialog.cs
- DataSourceCache.cs
- HtmlInputSubmit.cs
- ErrorFormatterPage.cs
- QualifierSet.cs
- MarkerProperties.cs
- BasicBrowserDialog.cs
- BuildManagerHost.cs
- Table.cs
- CqlIdentifiers.cs
- C14NUtil.cs
- _ListenerAsyncResult.cs
- CriticalHandle.cs
- TreeNodeConverter.cs
- oledbmetadatacollectionnames.cs
- CacheSection.cs
- PageCatalogPartDesigner.cs
- Rect.cs
- NativeMethods.cs
- BamlRecords.cs
- ListCollectionView.cs
- EventDriven.cs
- SqlNotificationEventArgs.cs
- PropertyChangingEventArgs.cs
- ReferentialConstraintRoleElement.cs
- Relationship.cs
- AmbientProperties.cs
- StrokeIntersection.cs
- HashHelpers.cs
- Vector3DCollection.cs
- Trace.cs
- QuestionEventArgs.cs
- DatagramAdapter.cs
- HealthMonitoringSectionHelper.cs
- WindowsGrip.cs
- TemplateControlCodeDomTreeGenerator.cs
- SiteMapNode.cs
- TransportContext.cs
- NameTable.cs
- FormsAuthenticationTicket.cs
- EventLogEntry.cs
- EmptyReadOnlyDictionaryInternal.cs
- MenuScrollingVisibilityConverter.cs
- EventInfo.cs
- RowTypeElement.cs
- MarkupCompiler.cs
- GlobalProxySelection.cs
- RuleAttributes.cs
- XamlSerializerUtil.cs
- DynamicArgumentDesigner.xaml.cs
- SourceFileBuildProvider.cs
- XmlAttributeCache.cs
- EntityViewContainer.cs
- TabPageDesigner.cs
- clipboard.cs
- __Error.cs
- ZeroOpNode.cs
- CatchBlock.cs
- ChannelServices.cs
- AspCompat.cs
- SerializableAttribute.cs
- HttpProfileGroupBase.cs
- GridViewDeleteEventArgs.cs
- XmlDataLoader.cs
- BamlLocalizer.cs
- ObjectContext.cs
- ConfigurationSectionGroup.cs
- httpstaticobjectscollection.cs
- SerialReceived.cs
- SiteIdentityPermission.cs
- Dump.cs
- ButtonBase.cs
- RoleManagerModule.cs
- ContainerParagraph.cs
- IpcServerChannel.cs
- HttpDictionary.cs
- WebConfigurationFileMap.cs
- Point3D.cs
- WhitespaceRuleReader.cs
- XPathException.cs
- CapiNative.cs
- ListBox.cs
- MemberDescriptor.cs
- regiisutil.cs
- TimeSpanStorage.cs
- IsolatedStoragePermission.cs