Code:
/ DotNET / DotNET / 8.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
- WebPartDescriptionCollection.cs
- HistoryEventArgs.cs
- InputEventArgs.cs
- ReceiveActivity.cs
- securestring.cs
- LZCodec.cs
- mongolianshape.cs
- EventData.cs
- DataGridGeneralPage.cs
- formatstringdialog.cs
- SByteConverter.cs
- SqlDataSource.cs
- FormView.cs
- FormatterConverter.cs
- ITreeGenerator.cs
- TrackingProfile.cs
- ListViewInsertedEventArgs.cs
- ReflectPropertyDescriptor.cs
- BindingListCollectionView.cs
- ColumnCollection.cs
- EasingFunctionBase.cs
- HtmlHistory.cs
- ControlBindingsCollection.cs
- EntityContainerRelationshipSet.cs
- X509ChainPolicy.cs
- TextCompositionEventArgs.cs
- EdmComplexPropertyAttribute.cs
- Schedule.cs
- TextLineBreak.cs
- TraceProvider.cs
- DataGridViewElement.cs
- QuaternionKeyFrameCollection.cs
- SQLDecimalStorage.cs
- TableCell.cs
- MethodSignatureGenerator.cs
- ExceptionUtil.cs
- KeyedPriorityQueue.cs
- HttpApplication.cs
- Maps.cs
- SchemaHelper.cs
- securestring.cs
- Clock.cs
- configsystem.cs
- AutomationElement.cs
- HtmlTableCell.cs
- URLAttribute.cs
- ResourceDictionaryCollection.cs
- KeyPullup.cs
- XmlSchema.cs
- DataBindingExpressionBuilder.cs
- Win32.cs
- WindowsSspiNegotiation.cs
- LabelLiteral.cs
- RequestQueryParser.cs
- CustomAssemblyResolver.cs
- HandlerMappingMemo.cs
- RtfControlWordInfo.cs
- XPathNavigatorException.cs
- HttpModuleAction.cs
- FreezableOperations.cs
- EastAsianLunisolarCalendar.cs
- TextSpan.cs
- AdornerPresentationContext.cs
- Listen.cs
- HttpRuntime.cs
- TabItem.cs
- PathSegment.cs
- BigInt.cs
- ClientRuntimeConfig.cs
- ConfigDefinitionUpdates.cs
- HttpStreamMessage.cs
- ConfigurationLocation.cs
- ImageBrush.cs
- BaseCollection.cs
- PowerModeChangedEventArgs.cs
- DataContractJsonSerializer.cs
- StringAnimationUsingKeyFrames.cs
- DuplicateDetector.cs
- SetIndexBinder.cs
- FontStretches.cs
- GridToolTip.cs
- backend.cs
- ManagedFilter.cs
- lengthconverter.cs
- ConfigurationProperty.cs
- AmbientValueAttribute.cs
- DataGridColumnCollectionEditor.cs
- SAPICategories.cs
- FileNotFoundException.cs
- MailMessageEventArgs.cs
- RangeBaseAutomationPeer.cs
- ActivityInfo.cs
- NativeMethods.cs
- SudsWriter.cs
- DetailsViewPagerRow.cs
- StoryFragments.cs
- XamlSerializerUtil.cs
- LinkArea.cs
- StrongNamePublicKeyBlob.cs
- CanonicalXml.cs