Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / xsp / System / Web / Configuration / SiteMapSection.cs / 1 / SiteMapSection.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.Security.Permissions;
/*
*/
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
public sealed class SiteMapSection : ConfigurationSection {
private static ConfigurationPropertyCollection _properties;
private static readonly ConfigurationProperty _propDefaultProvider =
new ConfigurationProperty("defaultProvider",
typeof(string),
"AspNetXmlSiteMapProvider",
null,
StdValidatorsAndConverters.NonEmptyStringValidator,
ConfigurationPropertyOptions.None);
private static readonly ConfigurationProperty _propEnabled =
new ConfigurationProperty("enabled",
typeof(bool),
true,
ConfigurationPropertyOptions.None);
private static readonly ConfigurationProperty _propProviders =
new ConfigurationProperty("providers",
typeof(ProviderSettingsCollection),
null,
ConfigurationPropertyOptions.None);
private SiteMapProviderCollection _siteMapProviders;
static SiteMapSection() {
// Property initialization
_properties = new ConfigurationPropertyCollection();
_properties.Add(_propDefaultProvider);
_properties.Add(_propEnabled);
_properties.Add(_propProviders);
}
public SiteMapSection() {
}
protected override ConfigurationPropertyCollection Properties {
get {
return _properties;
}
}
[ConfigurationProperty("defaultProvider", DefaultValue = "AspNetXmlSiteMapProvider")]
[StringValidator(MinLength = 1)]
public string DefaultProvider {
get {
return (string)base[_propDefaultProvider];
}
set {
base[_propDefaultProvider] = value;
}
}
[ConfigurationProperty("enabled", DefaultValue = true)]
public bool Enabled {
get {
return (bool)base[_propEnabled];
}
set {
base[_propEnabled] = value;
}
}
[ConfigurationProperty("providers")]
public ProviderSettingsCollection Providers {
get {
return (ProviderSettingsCollection)base[_propProviders];
}
}
internal SiteMapProviderCollection ProvidersInternal {
get {
if (_siteMapProviders == null) {
lock (this) {
if (_siteMapProviders == null) {
SiteMapProviderCollection siteMapProviders = new SiteMapProviderCollection();
ProvidersHelper.InstantiateProviders(Providers, siteMapProviders, typeof(SiteMapProvider));
_siteMapProviders = siteMapProviders;
}
}
}
return _siteMapProviders;
}
}
internal void ValidateDefaultProvider() {
if (!String.IsNullOrEmpty(DefaultProvider)) // make sure the specified provider has a provider entry in the collection
{
if (Providers[DefaultProvider] == null) {
throw new ConfigurationErrorsException(
SR.GetString(SR.Config_provider_must_exist, DefaultProvider),
ElementInformation.Properties[_propDefaultProvider.Name].Source,
ElementInformation.Properties[_propDefaultProvider.Name].LineNumber);
}
}
}
} // class SiteMapSection
}
// 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.Security.Permissions;
/*
*/
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
public sealed class SiteMapSection : ConfigurationSection {
private static ConfigurationPropertyCollection _properties;
private static readonly ConfigurationProperty _propDefaultProvider =
new ConfigurationProperty("defaultProvider",
typeof(string),
"AspNetXmlSiteMapProvider",
null,
StdValidatorsAndConverters.NonEmptyStringValidator,
ConfigurationPropertyOptions.None);
private static readonly ConfigurationProperty _propEnabled =
new ConfigurationProperty("enabled",
typeof(bool),
true,
ConfigurationPropertyOptions.None);
private static readonly ConfigurationProperty _propProviders =
new ConfigurationProperty("providers",
typeof(ProviderSettingsCollection),
null,
ConfigurationPropertyOptions.None);
private SiteMapProviderCollection _siteMapProviders;
static SiteMapSection() {
// Property initialization
_properties = new ConfigurationPropertyCollection();
_properties.Add(_propDefaultProvider);
_properties.Add(_propEnabled);
_properties.Add(_propProviders);
}
public SiteMapSection() {
}
protected override ConfigurationPropertyCollection Properties {
get {
return _properties;
}
}
[ConfigurationProperty("defaultProvider", DefaultValue = "AspNetXmlSiteMapProvider")]
[StringValidator(MinLength = 1)]
public string DefaultProvider {
get {
return (string)base[_propDefaultProvider];
}
set {
base[_propDefaultProvider] = value;
}
}
[ConfigurationProperty("enabled", DefaultValue = true)]
public bool Enabled {
get {
return (bool)base[_propEnabled];
}
set {
base[_propEnabled] = value;
}
}
[ConfigurationProperty("providers")]
public ProviderSettingsCollection Providers {
get {
return (ProviderSettingsCollection)base[_propProviders];
}
}
internal SiteMapProviderCollection ProvidersInternal {
get {
if (_siteMapProviders == null) {
lock (this) {
if (_siteMapProviders == null) {
SiteMapProviderCollection siteMapProviders = new SiteMapProviderCollection();
ProvidersHelper.InstantiateProviders(Providers, siteMapProviders, typeof(SiteMapProvider));
_siteMapProviders = siteMapProviders;
}
}
}
return _siteMapProviders;
}
}
internal void ValidateDefaultProvider() {
if (!String.IsNullOrEmpty(DefaultProvider)) // make sure the specified provider has a provider entry in the collection
{
if (Providers[DefaultProvider] == null) {
throw new ConfigurationErrorsException(
SR.GetString(SR.Config_provider_must_exist, DefaultProvider),
ElementInformation.Properties[_propDefaultProvider.Name].Source,
ElementInformation.Properties[_propDefaultProvider.Name].LineNumber);
}
}
}
} // class SiteMapSection
}
// 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
- WebFormsRootDesigner.cs
- Socket.cs
- CroppedBitmap.cs
- KeyToListMap.cs
- PipeSecurity.cs
- PropertyGridEditorPart.cs
- GetWinFXPath.cs
- exports.cs
- ElementHost.cs
- Executor.cs
- ParseElement.cs
- FakeModelItemImpl.cs
- XPathDescendantIterator.cs
- ExeConfigurationFileMap.cs
- ValidateNames.cs
- XmlWrappingReader.cs
- PlatformNotSupportedException.cs
- MissingFieldException.cs
- CodeDomSerializationProvider.cs
- ConfigXmlAttribute.cs
- Internal.cs
- DetailsViewCommandEventArgs.cs
- TimerElapsedEvenArgs.cs
- StringAnimationUsingKeyFrames.cs
- DataViewSettingCollection.cs
- BindingBase.cs
- ClientData.cs
- SafeNativeMethods.cs
- DataGridViewColumnDesignTimeVisibleAttribute.cs
- RenderContext.cs
- InputElement.cs
- FilteredAttributeCollection.cs
- PathStreamGeometryContext.cs
- PartialCachingControl.cs
- LocalizableAttribute.cs
- GroupBoxDesigner.cs
- CompilerResults.cs
- DesignerLabelAdapter.cs
- TreeNodeSelectionProcessor.cs
- RowToParametersTransformer.cs
- DataControlButton.cs
- SerialReceived.cs
- ZipIOCentralDirectoryFileHeader.cs
- ProofTokenCryptoHandle.cs
- SpellerError.cs
- XmlWrappingWriter.cs
- Timer.cs
- Registry.cs
- DesignerView.xaml.cs
- ReferenceConverter.cs
- WebConfigurationFileMap.cs
- MethodAccessException.cs
- BamlBinaryWriter.cs
- RadioButton.cs
- ImageButton.cs
- OrderPreservingPipeliningSpoolingTask.cs
- Subtree.cs
- TextLineResult.cs
- AutomationFocusChangedEventArgs.cs
- TimelineGroup.cs
- SkinBuilder.cs
- WebResourceAttribute.cs
- Brush.cs
- ClientSideQueueItem.cs
- DataPagerFieldItem.cs
- StoreItemCollection.Loader.cs
- MouseEvent.cs
- Registry.cs
- XmlSchemaRedefine.cs
- KnownColorTable.cs
- Help.cs
- Int64Storage.cs
- PermissionSetEnumerator.cs
- sortedlist.cs
- NullRuntimeConfig.cs
- TabControlAutomationPeer.cs
- EntitySet.cs
- FuncTypeConverter.cs
- Blend.cs
- String.cs
- OletxEnlistment.cs
- odbcmetadatacolumnnames.cs
- EntityCommandDefinition.cs
- InputLanguageManager.cs
- TextBoxBase.cs
- DataReceivedEventArgs.cs
- SponsorHelper.cs
- StructuralComparisons.cs
- _CommandStream.cs
- MetadataCache.cs
- httpstaticobjectscollection.cs
- AddInStore.cs
- PowerStatus.cs
- regiisutil.cs
- SQLBytesStorage.cs
- Model3DCollection.cs
- GridViewColumnHeader.cs
- MapPathBasedVirtualPathProvider.cs
- DataSourceProvider.cs
- AppliedDeviceFiltersEditor.cs