Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / xsp / System / Web / Configuration / NamespaceCollection.cs / 1 / 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.
//
//-----------------------------------------------------------------------------
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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DataGridView.cs
- ViewStateException.cs
- _AuthenticationState.cs
- sitestring.cs
- NegotiateStream.cs
- HitTestParameters.cs
- MarkupCompilePass2.cs
- X509Utils.cs
- CodeTypeConstructor.cs
- TimeSpanValidatorAttribute.cs
- DispatcherSynchronizationContext.cs
- InteropBitmapSource.cs
- BigInt.cs
- GlyphManager.cs
- UnsafeNativeMethodsPenimc.cs
- MethodBuilder.cs
- ToolBarOverflowPanel.cs
- ModuleConfigurationInfo.cs
- CheckBoxRenderer.cs
- EntityDataReader.cs
- CapabilitiesPattern.cs
- Utility.cs
- XmlUrlResolver.cs
- ScalarType.cs
- ListItem.cs
- XmlSignificantWhitespace.cs
- RuntimeConfig.cs
- ConfigurationManager.cs
- PropertyManager.cs
- DecoderExceptionFallback.cs
- LambdaCompiler.cs
- DataRecordInternal.cs
- DefaultMemberAttribute.cs
- AxHostDesigner.cs
- EventDescriptor.cs
- NonVisualControlAttribute.cs
- HtmlWindowCollection.cs
- AssociatedControlConverter.cs
- SeverityFilter.cs
- Timer.cs
- WriterOutput.cs
- IsolatedStorageException.cs
- TemplatePropertyEntry.cs
- WebServiceResponseDesigner.cs
- GeometryGroup.cs
- TryExpression.cs
- HashSetDebugView.cs
- XmlResolver.cs
- KeyedHashAlgorithm.cs
- RemotingConfigParser.cs
- EqualityComparer.cs
- OutputChannelBinder.cs
- Viewport2DVisual3D.cs
- MonitorWrapper.cs
- SchemaInfo.cs
- OletxEnlistment.cs
- NetTcpBinding.cs
- QueryReaderSettings.cs
- DataViewManager.cs
- ListControlBuilder.cs
- InstanceData.cs
- Rules.cs
- DependentList.cs
- ProviderCommandInfoUtils.cs
- ChainOfDependencies.cs
- IndexOutOfRangeException.cs
- SqlSelectStatement.cs
- SecurityPolicySection.cs
- EventLogPermissionAttribute.cs
- RealProxy.cs
- ConfigurationValidatorAttribute.cs
- IISMapPath.cs
- SqlDataSourceCache.cs
- DetailsViewUpdateEventArgs.cs
- UnsignedPublishLicense.cs
- Byte.cs
- ClientSession.cs
- DataTableMappingCollection.cs
- HttpModuleCollection.cs
- LoginAutoFormat.cs
- DataView.cs
- SoapEnumAttribute.cs
- DataViewManagerListItemTypeDescriptor.cs
- VideoDrawing.cs
- XmlNodeWriter.cs
- Calendar.cs
- ClusterRegistryConfigurationProvider.cs
- NetTcpBindingElement.cs
- DefaultAsyncDataDispatcher.cs
- InfiniteIntConverter.cs
- Padding.cs
- Hyperlink.cs
- FlowDocumentPage.cs
- UriScheme.cs
- Base64Encoder.cs
- ModelItemCollection.cs
- CurrentChangingEventManager.cs
- ImageCodecInfo.cs
- SelectionRangeConverter.cs
- XsdSchemaFileEditor.cs