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
- FormViewDeletedEventArgs.cs
- WindowsStartMenu.cs
- ListParaClient.cs
- SerialReceived.cs
- WindowsGraphicsWrapper.cs
- DrawListViewColumnHeaderEventArgs.cs
- AuthorizationRuleCollection.cs
- InfoCard.cs
- DataGridColumnCollection.cs
- SqlTypesSchemaImporter.cs
- VoiceInfo.cs
- TaiwanCalendar.cs
- Itemizer.cs
- Control.cs
- CompilerScope.Storage.cs
- WCFModelStrings.Designer.cs
- SoapEnumAttribute.cs
- BackEase.cs
- AnchoredBlock.cs
- EntityDataSourceViewSchema.cs
- DrawingDrawingContext.cs
- PolicyValidationException.cs
- DataGridViewAdvancedBorderStyle.cs
- TraceEventCache.cs
- BuildProvider.cs
- DesignColumnCollection.cs
- HideDisabledControlAdapter.cs
- WebPartExportVerb.cs
- ToolStripComboBox.cs
- TemplateBindingExtensionConverter.cs
- AsyncOperationContext.cs
- Ref.cs
- InternalConfigEventArgs.cs
- InputBinding.cs
- ViewGenResults.cs
- DrawingImage.cs
- SQLBinaryStorage.cs
- ListDictionary.cs
- DesignerLoader.cs
- AuthenticationService.cs
- BinaryObjectInfo.cs
- Stylus.cs
- QueryCacheKey.cs
- FixedSOMSemanticBox.cs
- NullableDoubleMinMaxAggregationOperator.cs
- Context.cs
- FtpRequestCacheValidator.cs
- DeleteHelper.cs
- RTLAwareMessageBox.cs
- ToolStripDropTargetManager.cs
- CursorConverter.cs
- infer.cs
- DriveInfo.cs
- DocumentSchemaValidator.cs
- ColorMatrix.cs
- ClientTargetSection.cs
- SuspendDesigner.cs
- Knowncolors.cs
- SHA256.cs
- AttachmentService.cs
- SubqueryRules.cs
- Identity.cs
- UnitySerializationHolder.cs
- WindowInteropHelper.cs
- SequentialUshortCollection.cs
- GridProviderWrapper.cs
- Statements.cs
- SchemaCompiler.cs
- AmbientProperties.cs
- LinkAreaEditor.cs
- ListBindingHelper.cs
- MenuAutomationPeer.cs
- TableParagraph.cs
- XamlSerializerUtil.cs
- DependencyPropertyConverter.cs
- CategoryNameCollection.cs
- TextEndOfSegment.cs
- SystemUdpStatistics.cs
- CatalogPartChrome.cs
- RefType.cs
- CheckBoxStandardAdapter.cs
- PropertyConverter.cs
- CodeTypeParameterCollection.cs
- InputLanguage.cs
- SafeLibraryHandle.cs
- NativeMethods.cs
- SqlCacheDependencyDatabaseCollection.cs
- TextSerializer.cs
- sqlpipe.cs
- BinHexDecoder.cs
- URIFormatException.cs
- ValidationHelpers.cs
- XPathSelfQuery.cs
- Point3DConverter.cs
- PropertyStore.cs
- TableRow.cs
- SqlXmlStorage.cs
- ConfigXmlSignificantWhitespace.cs
- _NativeSSPI.cs
- SystemDropShadowChrome.cs