Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / Configuration / SiteMapSection.cs / 1305376 / 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; /**/ 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; /**/ 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
- ReceiveCompletedEventArgs.cs
- NonParentingControl.cs
- StatusBar.cs
- ZipIOCentralDirectoryFileHeader.cs
- Attributes.cs
- WindowsListViewItemStartMenu.cs
- SQLResource.cs
- ExternalException.cs
- Soap.cs
- DataGridViewColumnHeaderCell.cs
- AuthorizationSection.cs
- PrePostDescendentsWalker.cs
- QuaternionAnimationUsingKeyFrames.cs
- OleCmdHelper.cs
- LinqTreeNodeEvaluator.cs
- WindowsScroll.cs
- HandlerFactoryWrapper.cs
- Matrix3DConverter.cs
- KeySplineConverter.cs
- TextStore.cs
- ECDiffieHellman.cs
- CqlParserHelpers.cs
- Pointer.cs
- Walker.cs
- Tuple.cs
- SqlCharStream.cs
- AutomationPatternInfo.cs
- SoundPlayerAction.cs
- SQLDateTimeStorage.cs
- ConfigurationStrings.cs
- TreeIterator.cs
- DynamicQueryableWrapper.cs
- ParameterModifier.cs
- _ConnectOverlappedAsyncResult.cs
- MSG.cs
- PassportAuthenticationEventArgs.cs
- RayHitTestParameters.cs
- ListDesigner.cs
- IBuiltInEvidence.cs
- MimeBasePart.cs
- ImportedPolicyConversionContext.cs
- StatusBarPanelClickEvent.cs
- CodeCatchClause.cs
- SqlProcedureAttribute.cs
- FormatterConverter.cs
- WaitHandle.cs
- BitmapEffectGeneralTransform.cs
- DataGridViewSelectedRowCollection.cs
- TimeoutValidationAttribute.cs
- Item.cs
- OSFeature.cs
- ErasingStroke.cs
- SqlEnums.cs
- WebBrowserNavigatingEventHandler.cs
- WindowsToolbar.cs
- SymbolResolver.cs
- LocatorManager.cs
- AgileSafeNativeMemoryHandle.cs
- TcpChannelHelper.cs
- CompilerWrapper.cs
- SqlCacheDependency.cs
- EventRoute.cs
- Timeline.cs
- CustomErrorsSection.cs
- OperationAbortedException.cs
- SemanticResolver.cs
- EntityFunctions.cs
- RSAPKCS1SignatureFormatter.cs
- SqlErrorCollection.cs
- WorkflowPageSetupDialog.cs
- MSHTMLHost.cs
- XmlIncludeAttribute.cs
- DataBoundControlDesigner.cs
- ModuleBuilderData.cs
- ByteAnimationUsingKeyFrames.cs
- EmissiveMaterial.cs
- ListViewInsertEventArgs.cs
- ListBox.cs
- ConnectionPointCookie.cs
- ActiveDocumentEvent.cs
- WithParamAction.cs
- ADMembershipProvider.cs
- BaseParser.cs
- BookmarkEventArgs.cs
- XmlUnspecifiedAttribute.cs
- XmlLoader.cs
- AssertFilter.cs
- BaseValidatorDesigner.cs
- BitmapEffectDrawing.cs
- XmlTypeAttribute.cs
- MouseWheelEventArgs.cs
- ScopedKnownTypes.cs
- TransformCryptoHandle.cs
- AdvancedBindingEditor.cs
- WeakReferenceList.cs
- _LocalDataStore.cs
- Interlocked.cs
- PropertyInfoSet.cs
- SdlChannelSink.cs
- DataGridHeadersVisibilityToVisibilityConverter.cs