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
- Size.cs
- TextSearch.cs
- SoapFault.cs
- WindowsGraphics.cs
- TraceXPathNavigator.cs
- SmiEventStream.cs
- WmlLinkAdapter.cs
- DataGridTablesFactory.cs
- HtmlTextArea.cs
- HandlerWithFactory.cs
- PathGeometry.cs
- TextEditor.cs
- DataViewManager.cs
- SqlUDTStorage.cs
- RootCodeDomSerializer.cs
- InkCollectionBehavior.cs
- ExpressionPrefixAttribute.cs
- AuthenticatedStream.cs
- ExceptionValidationRule.cs
- ClientProxyGenerator.cs
- ClientRoleProvider.cs
- SingleAnimation.cs
- Constraint.cs
- RtfToken.cs
- URLEditor.cs
- OutputCacheSettingsSection.cs
- WindowVisualStateTracker.cs
- FunctionParameter.cs
- WindowsTooltip.cs
- WebPartConnectionsEventArgs.cs
- RequestCacheManager.cs
- BitmapEditor.cs
- DataServiceHost.cs
- DataGridColumnHeader.cs
- PointAnimationClockResource.cs
- RemoteWebConfigurationHost.cs
- ButtonAutomationPeer.cs
- XPathPatternParser.cs
- UnauthorizedAccessException.cs
- diagnosticsswitches.cs
- DataGridParentRows.cs
- ColorConverter.cs
- SqlParameter.cs
- ObjectQuery_EntitySqlExtensions.cs
- SafeNativeMethods.cs
- WebServiceBindingAttribute.cs
- RuntimeConfigLKG.cs
- XmlQueryOutput.cs
- FormsAuthenticationModule.cs
- PointCollection.cs
- MarshalDirectiveException.cs
- OleDbConnectionPoolGroupProviderInfo.cs
- DiscoveryMessageSequenceGenerator.cs
- CodeSnippetExpression.cs
- SessionParameter.cs
- BitmapEffectInput.cs
- FunctionImportElement.cs
- GenerateScriptTypeAttribute.cs
- PointCollection.cs
- Quad.cs
- XmlCharacterData.cs
- DesignerActionVerbList.cs
- querybuilder.cs
- ItemsControl.cs
- CookieProtection.cs
- GridEntry.cs
- Matrix3D.cs
- ImageAttributes.cs
- SystemIPInterfaceProperties.cs
- DataTemplateSelector.cs
- PersonalizationStateQuery.cs
- ComplexType.cs
- HttpModuleCollection.cs
- Descriptor.cs
- SqlClientFactory.cs
- UserPreferenceChangedEventArgs.cs
- URLIdentityPermission.cs
- DataGridCell.cs
- RequestQueryProcessor.cs
- Model3D.cs
- TransformationRules.cs
- GlyphRunDrawing.cs
- BinaryMethodMessage.cs
- MetadataCacheItem.cs
- EncoderExceptionFallback.cs
- DBConnection.cs
- Attributes.cs
- mda.cs
- PropagationProtocolsTracing.cs
- AssemblyNameProxy.cs
- EntryIndex.cs
- KeyboardEventArgs.cs
- ScriptServiceAttribute.cs
- SQLBinaryStorage.cs
- ResXFileRef.cs
- FontResourceCache.cs
- ValidatingReaderNodeData.cs
- XPathNodeIterator.cs
- HttpDictionary.cs
- HttpCookieCollection.cs