Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / ndp / fx / src / xsp / System / Web / Configuration / NamespaceCollection.cs / 3 / 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;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------------------------
//
// 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;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ContainerParagraph.cs
- SoapReflectionImporter.cs
- XmlEntity.cs
- Label.cs
- XmlAnyElementAttributes.cs
- Mutex.cs
- VarRefManager.cs
- HwndHostAutomationPeer.cs
- SystemIPInterfaceStatistics.cs
- PropertyGroupDescription.cs
- Keywords.cs
- AggregateNode.cs
- ConditionalAttribute.cs
- _NTAuthentication.cs
- ProtocolViolationException.cs
- UnknownBitmapDecoder.cs
- TableLayoutStyleCollection.cs
- ObjectQueryState.cs
- DesignerActionHeaderItem.cs
- SystemDiagnosticsSection.cs
- UnknownBitmapEncoder.cs
- CheckBoxStandardAdapter.cs
- ProtectedConfiguration.cs
- OrderByExpression.cs
- DataControlLinkButton.cs
- TextTreeInsertUndoUnit.cs
- ObjectStateEntryDbUpdatableDataRecord.cs
- TableLayoutRowStyleCollection.cs
- WasAdminWrapper.cs
- HttpListenerContext.cs
- ActiveDocumentEvent.cs
- RichTextBox.cs
- AutomationEventArgs.cs
- Stacktrace.cs
- KeyValueSerializer.cs
- DoubleStorage.cs
- AtomEntry.cs
- WorkingDirectoryEditor.cs
- Identifier.cs
- ResetableIterator.cs
- HtmlInputRadioButton.cs
- AspCompat.cs
- SolidColorBrush.cs
- SafePEFileHandle.cs
- NonParentingControl.cs
- PropertyInformation.cs
- Control.cs
- DataGridViewMethods.cs
- BindingOperations.cs
- TargetInvocationException.cs
- SqlBulkCopyColumnMappingCollection.cs
- FormViewInsertEventArgs.cs
- MouseButton.cs
- DictionaryTraceRecord.cs
- SynchronizingStream.cs
- TextDecorations.cs
- ShaperBuffers.cs
- EventRoute.cs
- ErrorInfoXmlDocument.cs
- OleTxTransaction.cs
- SignatureToken.cs
- WindowsListBox.cs
- SyndicationSerializer.cs
- ThousandthOfEmRealDoubles.cs
- DataGridViewColumnTypePicker.cs
- NamedElement.cs
- PrivateFontCollection.cs
- ConditionCollection.cs
- TreePrinter.cs
- TablePattern.cs
- WeakReferenceEnumerator.cs
- XmlSchemaSimpleContent.cs
- SmtpNtlmAuthenticationModule.cs
- DataGridViewAutoSizeModeEventArgs.cs
- SingleStorage.cs
- DeleteHelper.cs
- ByteStreamBufferedMessageData.cs
- ACE.cs
- SpStreamWrapper.cs
- CollectionChangedEventManager.cs
- SerTrace.cs
- SerializerProvider.cs
- Lease.cs
- EdmProperty.cs
- HeaderUtility.cs
- DirtyTextRange.cs
- NavigationCommands.cs
- InputBuffer.cs
- dataSvcMapFileLoader.cs
- ListControlConvertEventArgs.cs
- RecognizeCompletedEventArgs.cs
- PhonemeEventArgs.cs
- FormViewInsertEventArgs.cs
- DataGridViewComboBoxColumnDesigner.cs
- BooleanFunctions.cs
- SudsCommon.cs
- SecurityPolicySection.cs
- SQLRoleProvider.cs
- ProvidePropertyAttribute.cs
- HttpModuleCollection.cs