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
- CompareValidator.cs
- _SSPISessionCache.cs
- ResourceContainer.cs
- CqlGenerator.cs
- StringResourceManager.cs
- WrapPanel.cs
- SystemInfo.cs
- Config.cs
- ScriptingWebServicesSectionGroup.cs
- ConfigurationElement.cs
- AndCondition.cs
- DiscreteKeyFrames.cs
- DatagridviewDisplayedBandsData.cs
- FreeFormDragDropManager.cs
- HttpCacheVary.cs
- UDPClient.cs
- KerberosReceiverSecurityToken.cs
- AggregationMinMaxHelpers.cs
- Color.cs
- MatrixUtil.cs
- RoutedEventArgs.cs
- IndexedEnumerable.cs
- GridEntry.cs
- Int32Rect.cs
- Compiler.cs
- WinHttpWebProxyFinder.cs
- XmlILTrace.cs
- WindowsEditBoxRange.cs
- DataGrid.cs
- XmlComplianceUtil.cs
- RSAPKCS1SignatureFormatter.cs
- ConfigurationElementProperty.cs
- WebPartMovingEventArgs.cs
- TimersDescriptionAttribute.cs
- CaseInsensitiveComparer.cs
- PostBackOptions.cs
- EnumerableRowCollectionExtensions.cs
- SQLSingle.cs
- SaveWorkflowCommand.cs
- FrameworkTemplate.cs
- BitmapEffectState.cs
- SmtpNtlmAuthenticationModule.cs
- InternalTypeHelper.cs
- WindowsNonControl.cs
- ServerIdentity.cs
- WindowsFormsSynchronizationContext.cs
- HebrewCalendar.cs
- RoleManagerEventArgs.cs
- ExtractorMetadata.cs
- ShaperBuffers.cs
- TargetPerspective.cs
- ComNativeDescriptor.cs
- OleDbWrapper.cs
- TypeConverterHelper.cs
- ListBindingConverter.cs
- ToolStripActionList.cs
- ResourceReferenceExpressionConverter.cs
- BoundPropertyEntry.cs
- SqlBulkCopyColumnMappingCollection.cs
- sqlstateclientmanager.cs
- EntityDescriptor.cs
- Gdiplus.cs
- Hashtable.cs
- OLEDB_Enum.cs
- PeerNameResolver.cs
- GroupBoxRenderer.cs
- SoundPlayerAction.cs
- _NegotiateClient.cs
- RepeatButtonAutomationPeer.cs
- GenericPrincipal.cs
- OpenFileDialog.cs
- XPathItem.cs
- Environment.cs
- SchemaImporterExtension.cs
- Substitution.cs
- BinaryMethodMessage.cs
- NetMsmqBindingCollectionElement.cs
- DictionaryMarkupSerializer.cs
- WebControlAdapter.cs
- TranslateTransform3D.cs
- XPathDescendantIterator.cs
- StylusPointPropertyId.cs
- ApplicationSettingsBase.cs
- ReflectionTypeLoadException.cs
- ColumnMapProcessor.cs
- SmiGettersStream.cs
- Run.cs
- XmlWrappingReader.cs
- PeerCollaborationPermission.cs
- MetaChildrenColumn.cs
- EventProviderWriter.cs
- ShutDownListener.cs
- UriTemplateClientFormatter.cs
- MemberAccessException.cs
- AnonymousIdentificationSection.cs
- DbProviderConfigurationHandler.cs
- HttpResponse.cs
- CleanUpVirtualizedItemEventArgs.cs
- Page.cs
- LoadGrammarCompletedEventArgs.cs