Code:
/ DotNET / DotNET / 8.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
- CompiledQueryCacheEntry.cs
- clipboard.cs
- TextTreeTextBlock.cs
- RequestValidator.cs
- ProjectionCamera.cs
- WaitHandleCannotBeOpenedException.cs
- PointAnimationClockResource.cs
- RSACryptoServiceProvider.cs
- OrderPreservingPipeliningSpoolingTask.cs
- PropertyTab.cs
- Repeater.cs
- InvalidPropValue.cs
- StoreAnnotationsMap.cs
- AssemblyAttributes.cs
- ParentQuery.cs
- DbException.cs
- XmlNotation.cs
- ProfessionalColorTable.cs
- DataObjectPastingEventArgs.cs
- HtmlEmptyTagControlBuilder.cs
- FixedSOMGroup.cs
- SoapProtocolImporter.cs
- UdpConstants.cs
- ThreadExceptionEvent.cs
- DataGridState.cs
- diagnosticsswitches.cs
- MsmqIntegrationChannelListener.cs
- ContextMenuStrip.cs
- mediaeventargs.cs
- MouseGestureValueSerializer.cs
- Utils.cs
- InheritanceRules.cs
- DataGridViewButtonColumn.cs
- ClientUrlResolverWrapper.cs
- OneToOneMappingSerializer.cs
- ObjectMemberMapping.cs
- codemethodreferenceexpression.cs
- DataReaderContainer.cs
- DummyDataSource.cs
- Range.cs
- ContentTypeSettingClientMessageFormatter.cs
- WindowVisualStateTracker.cs
- PropertyConverter.cs
- ButtonAutomationPeer.cs
- DateTimeEditor.cs
- XsdDateTime.cs
- MarkupExtensionReturnTypeAttribute.cs
- TranslateTransform.cs
- TabControlCancelEvent.cs
- FlowPanelDesigner.cs
- TemplatedControlDesigner.cs
- xmlsaver.cs
- TimeoutValidationAttribute.cs
- QueueException.cs
- WebBrowserHelper.cs
- SafeViewOfFileHandle.cs
- EventArgs.cs
- ChangeBlockUndoRecord.cs
- XmlSchemaSequence.cs
- HtmlPageAdapter.cs
- RsaSecurityToken.cs
- Connector.cs
- ModelItemKeyValuePair.cs
- HttpHandlersSection.cs
- XmlSchemaSimpleContent.cs
- ActivityExecutorDelegateInfo.cs
- XmlQualifiedName.cs
- LayoutTableCell.cs
- Identity.cs
- DataRowExtensions.cs
- ButtonColumn.cs
- StylusPointPropertyId.cs
- MediaCommands.cs
- DataServiceRequestOfT.cs
- StringResourceManager.cs
- PatternMatcher.cs
- ExpandSegmentCollection.cs
- MissingMethodException.cs
- BamlCollectionHolder.cs
- OutOfProcStateClientManager.cs
- TableStyle.cs
- TextBoxView.cs
- FormViewCommandEventArgs.cs
- SynchronizedDispatch.cs
- DBNull.cs
- StaticContext.cs
- DoubleAnimationUsingPath.cs
- Converter.cs
- DesignerForm.cs
- KnownBoxes.cs
- DataKeyCollection.cs
- CryptoStream.cs
- DependencyObject.cs
- ExpandCollapseProviderWrapper.cs
- VirtualizingPanel.cs
- ArraySubsetEnumerator.cs
- PriorityItem.cs
- SamlAuthorityBinding.cs
- WorkflowStateRollbackService.cs
- FixedSOMLineRanges.cs