Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / Configuration / TagMapCollection.cs / 2 / TagMapCollection.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; [ConfigurationCollection(typeof(TagMapInfo))] [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class TagMapCollection : ConfigurationElementCollection { private static ConfigurationPropertyCollection _properties; private Hashtable _tagMappings; static TagMapCollection() { // Property initialization _properties = new ConfigurationPropertyCollection(); } public TagMapCollection() { } protected override ConfigurationPropertyCollection Properties { get { return _properties; } } public TagMapInfo this[int index] { get { return (TagMapInfo)BaseGet(index); } set { if (BaseGet(index) != null) { BaseRemoveAt(index); } BaseAdd(index, value); } } public void Add(TagMapInfo tagMapInformation) { BaseAdd(tagMapInformation); } public void Remove(TagMapInfo tagMapInformation) { BaseRemove(GetElementKey(tagMapInformation)); } public void Clear() { BaseClear(); } protected override ConfigurationElement CreateNewElement() { return new TagMapInfo(); } protected override Object GetElementKey(ConfigurationElement element) { return ((TagMapInfo)element).TagType; } internal Hashtable TagTypeMappingInternal { get { if (_tagMappings == null) { lock (this) { if (_tagMappings == null) { Hashtable tagMappings = new Hashtable(StringComparer.OrdinalIgnoreCase); foreach (TagMapInfo tmi in this) { Type tagType = ConfigUtil.GetType(tmi.TagType, "tagType", tmi); Type mappedTagType = ConfigUtil.GetType(tmi.MappedTagType, "mappedTagType", tmi); if (tagType.IsAssignableFrom(mappedTagType) == false) { throw new ConfigurationErrorsException( SR.GetString( SR.Mapped_type_must_inherit, tmi.MappedTagType, tmi.TagType), tmi.ElementInformation.Properties["mappedTagType"].Source, tmi.ElementInformation.Properties["mappedTagType"].LineNumber); } tagMappings[tagType] = mappedTagType; } _tagMappings = tagMappings; } } } return _tagMappings; } } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ControlBindingsCollection.cs
- BinaryNode.cs
- OpCellTreeNode.cs
- Literal.cs
- DataGridViewMethods.cs
- MachineSettingsSection.cs
- EntityContainerRelationshipSetEnd.cs
- XappLauncher.cs
- JsonReaderDelegator.cs
- SecurityContextSecurityTokenResolver.cs
- DbParameterHelper.cs
- DependsOnAttribute.cs
- SQLInt64Storage.cs
- ValidationSummary.cs
- QilFactory.cs
- AssociationSet.cs
- InvalidDataException.cs
- WebEventTraceProvider.cs
- DefaultDialogButtons.cs
- ExternalFile.cs
- HtmlInputCheckBox.cs
- SqlRewriteScalarSubqueries.cs
- UIElementCollection.cs
- DataGridPagerStyle.cs
- VisualBasicValue.cs
- SafeLibraryHandle.cs
- CalendarItem.cs
- DeleteIndexBinder.cs
- BitStack.cs
- OracleFactory.cs
- ConstantSlot.cs
- PersistChildrenAttribute.cs
- SortedDictionary.cs
- MessagePropertyVariants.cs
- cookiecontainer.cs
- ConfigPathUtility.cs
- CommunicationException.cs
- DCSafeHandle.cs
- ItemCheckEvent.cs
- SqlUtils.cs
- LingerOption.cs
- ExtensionQuery.cs
- AdjustableArrowCap.cs
- ResXResourceWriter.cs
- LinearKeyFrames.cs
- ModelVisual3D.cs
- Claim.cs
- ByteAnimationUsingKeyFrames.cs
- Activator.cs
- XmlSchemaAll.cs
- SeekStoryboard.cs
- cache.cs
- AddingNewEventArgs.cs
- MsmqBindingBase.cs
- EventListenerClientSide.cs
- ActivityLocationReferenceEnvironment.cs
- ClientBuildManager.cs
- PropertyGeneratedEventArgs.cs
- ISessionStateStore.cs
- SafeRightsManagementSessionHandle.cs
- MediaTimeline.cs
- ListSourceHelper.cs
- __TransparentProxy.cs
- HtmlCommandAdapter.cs
- SharedStatics.cs
- AssemblyFilter.cs
- ObjectDataSourceSelectingEventArgs.cs
- InheritanceRules.cs
- StringValueSerializer.cs
- Parser.cs
- Inline.cs
- ControlIdConverter.cs
- EntityContainerAssociationSet.cs
- XmlSchemaAnyAttribute.cs
- UnmanagedMarshal.cs
- PageWrapper.cs
- PropertyEntry.cs
- CodePageEncoding.cs
- XmlIncludeAttribute.cs
- StoreAnnotationsMap.cs
- RuntimeConfigurationRecord.cs
- clipboard.cs
- XPathMessageContext.cs
- TransformerConfigurationWizardBase.cs
- Win32Interop.cs
- ToolBarPanel.cs
- IntersectQueryOperator.cs
- PageContentCollection.cs
- TemplateField.cs
- WindowsRichEdit.cs
- WinFormsSecurity.cs
- GridViewColumnHeaderAutomationPeer.cs
- Color.cs
- DoubleAverageAggregationOperator.cs
- StylusPointCollection.cs
- Span.cs
- Math.cs
- SQLBinary.cs
- FamilyTypeface.cs
- MaxMessageSizeStream.cs