Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / Configuration / NamespaceCollection.cs / 2 / NamespaceCollection.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; // class PagesSection [ConfigurationCollection(typeof(NamespaceInfo))] [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class NamespaceCollection : ConfigurationElementCollection { private static ConfigurationPropertyCollection _properties; private static readonly ConfigurationProperty _propAutoImportVBNamespace = new ConfigurationProperty("autoImportVBNamespace", typeof(bool), true, ConfigurationPropertyOptions.None); private Hashtable _namespaceEntries; static NamespaceCollection() { // Property initialization _properties = new ConfigurationPropertyCollection(); _properties.Add(_propAutoImportVBNamespace); } protected override ConfigurationPropertyCollection Properties { get { return _properties; } } [ConfigurationProperty("autoImportVBNamespace", DefaultValue = true)] public bool AutoImportVBNamespace { get { return (bool)base[_propAutoImportVBNamespace]; } set { base[_propAutoImportVBNamespace] = value; } } public NamespaceInfo this[int index] { get { return (NamespaceInfo)BaseGet(index); } set { if (BaseGet(index) != null) BaseRemoveAt(index); BaseAdd(index, value); _namespaceEntries = null; } } public void Add(NamespaceInfo namespaceInformation) { BaseAdd(namespaceInformation); _namespaceEntries = null; } public void Remove(String s) { BaseRemove(s); _namespaceEntries = null; } public void RemoveAt(int index) { BaseRemoveAt(index); _namespaceEntries = null; } protected override ConfigurationElement CreateNewElement() { return new NamespaceInfo(); } protected override Object GetElementKey(ConfigurationElement element) { return ((NamespaceInfo)element).Namespace; } public void Clear() { BaseClear(); _namespaceEntries = null; } internal Hashtable NamespaceEntries { get { if (_namespaceEntries == null) { lock (this) { if (_namespaceEntries == null) { _namespaceEntries = new Hashtable(StringComparer.OrdinalIgnoreCase); foreach (NamespaceInfo ni in this) { NamespaceEntry namespaceEntry = new NamespaceEntry(); namespaceEntry.Namespace = ni.Namespace; // Remember the config file location info, in case an error // occurs later when we use this data namespaceEntry.Line = ni.ElementInformation.Properties["namespace"].LineNumber; // namespaceEntry.VirtualPath = ni.ElementInformation.Properties["namespace"].Source; // If the namespace was given Programactically it needs to still have a // valid line number of the compiler chokes (1 based). if (namespaceEntry.Line == 0) { namespaceEntry.Line = 1; } _namespaceEntries[ni.Namespace] = namespaceEntry; } } } } return _namespaceEntries; } } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SrgsDocument.cs
- SmtpFailedRecipientException.cs
- NotFiniteNumberException.cs
- Blend.cs
- WinHttpWebProxyFinder.cs
- EntityDataSourceContextCreatedEventArgs.cs
- PhysicalAddress.cs
- Boolean.cs
- WaveHeader.cs
- AutoGeneratedFieldProperties.cs
- PageThemeBuildProvider.cs
- ServiceNameCollection.cs
- HttpListenerPrefixCollection.cs
- ToolStripItemGlyph.cs
- TableLayoutStyleCollection.cs
- _IPv4Address.cs
- AmbiguousMatchException.cs
- HwndSourceKeyboardInputSite.cs
- OperationPickerDialog.designer.cs
- Geometry.cs
- WebPartVerb.cs
- RoleServiceManager.cs
- Token.cs
- IndexedGlyphRun.cs
- ServiceModelSecurityTokenTypes.cs
- QueryableDataSourceHelper.cs
- TCPListener.cs
- HMACSHA384.cs
- ByteFacetDescriptionElement.cs
- ProcessProtocolHandler.cs
- PopupEventArgs.cs
- GeneralTransform.cs
- ObjectSet.cs
- LinqDataSourceStatusEventArgs.cs
- List.cs
- WebPartConnectionsConnectVerb.cs
- CodeTypeReferenceCollection.cs
- LinkButton.cs
- MexTcpBindingElement.cs
- CodeAttachEventStatement.cs
- LocationSectionRecord.cs
- FakeModelItemImpl.cs
- WebRequestModuleElement.cs
- Pkcs7Recipient.cs
- ClipboardProcessor.cs
- ReadOnlyHierarchicalDataSourceView.cs
- CodeConstructor.cs
- UIElement3DAutomationPeer.cs
- AQNBuilder.cs
- DeviceContext2.cs
- SocketException.cs
- SqlUtils.cs
- PropertyCollection.cs
- SelectionRangeConverter.cs
- StringArrayConverter.cs
- BuilderInfo.cs
- DocumentGridContextMenu.cs
- ColorMap.cs
- ContextMenu.cs
- DataGridViewLinkColumn.cs
- WindowsAuthenticationEventArgs.cs
- GridViewAutomationPeer.cs
- CheckBox.cs
- RouteItem.cs
- TypedReference.cs
- ObsoleteAttribute.cs
- Internal.cs
- BamlVersionHeader.cs
- Parallel.cs
- PrimitiveType.cs
- Int16AnimationBase.cs
- TripleDESCryptoServiceProvider.cs
- DetailsViewRowCollection.cs
- ReferenceSchema.cs
- RectConverter.cs
- OdbcReferenceCollection.cs
- BitStack.cs
- ChangeTracker.cs
- TextEffectCollection.cs
- ViewBase.cs
- BaseParser.cs
- SqlMultiplexer.cs
- X509SubjectKeyIdentifierClause.cs
- QueryExpr.cs
- DocumentPageHost.cs
- unitconverter.cs
- CompModSwitches.cs
- XmlSchemaParticle.cs
- UInt64.cs
- TrackingProvider.cs
- DataGridRelationshipRow.cs
- NotifyCollectionChangedEventArgs.cs
- HGlobalSafeHandle.cs
- CancellationHandlerDesigner.cs
- OdbcUtils.cs
- ModelItem.cs
- SiteMapDataSourceView.cs
- SortAction.cs
- CellConstantDomain.cs
- SizeFConverter.cs