Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / Configuration / SiteMapSection.cs / 2 / 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 }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ClientConfigurationHost.cs
- CollectionBase.cs
- BamlWriter.cs
- TouchesOverProperty.cs
- SendingRequestEventArgs.cs
- OutputCacheSettings.cs
- TransformPattern.cs
- X509Certificate2.cs
- ScopedKnownTypes.cs
- PositiveTimeSpanValidator.cs
- WizardForm.cs
- Stack.cs
- TitleStyle.cs
- ManifestResourceInfo.cs
- PropertyDescriptorComparer.cs
- TokenBasedSet.cs
- _RequestCacheProtocol.cs
- DesignerValidationSummaryAdapter.cs
- TextElementCollection.cs
- Button.cs
- ObjectAnimationBase.cs
- Line.cs
- LocatorPart.cs
- ConnectivityStatus.cs
- CellParaClient.cs
- TextDocumentView.cs
- RangeValueProviderWrapper.cs
- ConfigurationValidatorAttribute.cs
- MenuScrollingVisibilityConverter.cs
- DataGridViewRow.cs
- TagMapInfo.cs
- ToolbarAUtomationPeer.cs
- oledbconnectionstring.cs
- ToolStripContentPanel.cs
- ComplexTypeEmitter.cs
- CompiledRegexRunner.cs
- XmlAttributeCache.cs
- PersonalizationDictionary.cs
- XmlWrappingReader.cs
- RequestNavigateEventArgs.cs
- BrowserCapabilitiesFactory35.cs
- TdsParameterSetter.cs
- StaticDataManager.cs
- SqlConnection.cs
- ThicknessAnimationUsingKeyFrames.cs
- ContextStaticAttribute.cs
- DefaultValueAttribute.cs
- FileUpload.cs
- FrameworkPropertyMetadata.cs
- SiteMapProvider.cs
- XmlCountingReader.cs
- ProviderCollection.cs
- TypeConverterMarkupExtension.cs
- PaperSize.cs
- ContentPropertyAttribute.cs
- OracleParameterBinding.cs
- SeverityFilter.cs
- DictionaryEditChange.cs
- DeploymentSection.cs
- EntityModelSchemaGenerator.cs
- MouseActionValueSerializer.cs
- HtmlElementErrorEventArgs.cs
- SoapSchemaMember.cs
- ApplicationDirectory.cs
- XmlTypeMapping.cs
- CodeDelegateCreateExpression.cs
- XmlSchemaSubstitutionGroup.cs
- Simplifier.cs
- DataServiceEntityAttribute.cs
- TriggerAction.cs
- srgsitem.cs
- PhysicalAddress.cs
- AsymmetricKeyExchangeDeformatter.cs
- FacetValues.cs
- EdmError.cs
- MultipartIdentifier.cs
- GroupQuery.cs
- Events.cs
- SocketPermission.cs
- OutKeywords.cs
- EndPoint.cs
- ExtendedProtectionPolicy.cs
- ControlBuilder.cs
- CatalogPart.cs
- AddInStore.cs
- TextTreeInsertUndoUnit.cs
- ConnectionManagementSection.cs
- WizardForm.cs
- ConfigurationManagerHelperFactory.cs
- Hex.cs
- WebServiceMethodData.cs
- TypeGeneratedEventArgs.cs
- BindingElementCollection.cs
- TaskFactory.cs
- AnonymousIdentificationSection.cs
- EventManager.cs
- CaseInsensitiveOrdinalStringComparer.cs
- DataTemplate.cs
- ViewStateModeByIdAttribute.cs
- GlyphShapingProperties.cs