Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / ndp / fx / src / xsp / System / Web / Configuration / SiteMapSection.cs / 3 / 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. //------------------------------------------------------------------------------ // // 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- _NestedSingleAsyncResult.cs
- BasicCellRelation.cs
- BitmapEffect.cs
- WebServiceResponse.cs
- DesignerVerb.cs
- PipelineModuleStepContainer.cs
- Menu.cs
- MetadataUtil.cs
- ParameterBuilder.cs
- SystemBrushes.cs
- BitmapScalingModeValidation.cs
- Path.cs
- TimeSpanOrInfiniteConverter.cs
- DataGridViewElement.cs
- SpStreamWrapper.cs
- ClockController.cs
- PanelDesigner.cs
- KeyValuePairs.cs
- ToolStripControlHost.cs
- XmlNodeReader.cs
- SectionUpdates.cs
- ObjectDataSourceSelectingEventArgs.cs
- FrameAutomationPeer.cs
- BindStream.cs
- SafePointer.cs
- SimpleHandlerBuildProvider.cs
- RadioButtonAutomationPeer.cs
- EntityDataSourceQueryBuilder.cs
- ColorPalette.cs
- DataRelationCollection.cs
- ContextActivityUtils.cs
- SiteMapDataSourceView.cs
- controlskin.cs
- SafePipeHandle.cs
- BamlLocalizationDictionary.cs
- SQLRoleProvider.cs
- PagedDataSource.cs
- MsmqInputChannelListenerBase.cs
- MetafileHeader.cs
- PtsHost.cs
- GenericTypeParameterBuilder.cs
- GradientSpreadMethodValidation.cs
- ConfigurationSectionCollection.cs
- MarshalByRefObject.cs
- GatewayDefinition.cs
- SortQuery.cs
- AsyncResult.cs
- SequentialWorkflowHeaderFooter.cs
- HiddenFieldPageStatePersister.cs
- CodeMemberProperty.cs
- FixedSOMElement.cs
- StatusBarPanel.cs
- InfocardExtendedInformationEntry.cs
- NamespaceCollection.cs
- ExpressionConverter.cs
- Exception.cs
- PartialTrustVisibleAssemblyCollection.cs
- FormsAuthenticationEventArgs.cs
- ScaleTransform3D.cs
- BitArray.cs
- XmlQuerySequence.cs
- MatchSingleFxEngineOpcode.cs
- GlobalItem.cs
- BackStopAuthenticationModule.cs
- HostElement.cs
- RegistryConfigurationProvider.cs
- UIntPtr.cs
- ObjectConverter.cs
- WinInetCache.cs
- TypedTableBase.cs
- DetailsViewInsertEventArgs.cs
- EntityTypeBase.cs
- IPipelineRuntime.cs
- ToolboxItem.cs
- ServerValidateEventArgs.cs
- MsmqIntegrationInputMessage.cs
- WorkflowOperationErrorHandler.cs
- RadioButtonFlatAdapter.cs
- State.cs
- SqlClientPermission.cs
- CultureMapper.cs
- GridViewUpdatedEventArgs.cs
- SafeNativeMemoryHandle.cs
- OleServicesContext.cs
- WaitHandle.cs
- SiteMapNodeCollection.cs
- SessionIDManager.cs
- Transform.cs
- TemplateBindingExtensionConverter.cs
- SqlProfileProvider.cs
- DefaultTextStore.cs
- ParamArrayAttribute.cs
- EventManager.cs
- QueryInterceptorAttribute.cs
- PartialCachingAttribute.cs
- TcpAppDomainProtocolHandler.cs
- _TransmitFileOverlappedAsyncResult.cs
- GridViewCancelEditEventArgs.cs
- PartialTrustHelpers.cs
- StructuredTypeEmitter.cs