Code:
/ FX-1434 / FX-1434 / 1.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
- AtomPub10ServiceDocumentFormatter.cs
- xmlformatgeneratorstatics.cs
- FilePrompt.cs
- AppDomainAttributes.cs
- EventRoute.cs
- Viewport2DVisual3D.cs
- InProcStateClientManager.cs
- UIElementIsland.cs
- Int32Storage.cs
- BitmapImage.cs
- MasterPageCodeDomTreeGenerator.cs
- RadioButtonPopupAdapter.cs
- SmiXetterAccessMap.cs
- thaishape.cs
- SchemaElementDecl.cs
- FontDriver.cs
- JumpTask.cs
- StorageModelBuildProvider.cs
- WindowPattern.cs
- InheritanceUI.cs
- WindowsSecurityToken.cs
- CustomError.cs
- NumberFunctions.cs
- RawStylusInputReport.cs
- CollectionEditVerbManager.cs
- WebControl.cs
- URL.cs
- PriorityItem.cs
- CounterCreationData.cs
- IRCollection.cs
- TypeConverterAttribute.cs
- BamlBinaryReader.cs
- DataGridViewImageCell.cs
- WindowsGraphicsWrapper.cs
- SessionStateUtil.cs
- AdapterUtil.cs
- CollectionViewSource.cs
- UriParserTemplates.cs
- BindingWorker.cs
- BaseConfigurationRecord.cs
- StateChangeEvent.cs
- LookupNode.cs
- RenderData.cs
- RichTextBoxAutomationPeer.cs
- _HeaderInfoTable.cs
- GridViewRowPresenterBase.cs
- CalendarDesigner.cs
- Trustee.cs
- PortCache.cs
- BitmapDownload.cs
- SmtpSection.cs
- Int16.cs
- ExpressionList.cs
- CodeNamespace.cs
- IDQuery.cs
- SingletonChannelAcceptor.cs
- SupportingTokenParameters.cs
- EditorPartChrome.cs
- JavaScriptObjectDeserializer.cs
- ByteAnimation.cs
- DocumentGridContextMenu.cs
- PenContexts.cs
- QualificationDataItem.cs
- OleDbSchemaGuid.cs
- WindowsClaimSet.cs
- Geometry3D.cs
- TextCollapsingProperties.cs
- ForeignConstraint.cs
- BCryptHashAlgorithm.cs
- BamlTreeNode.cs
- LoginCancelEventArgs.cs
- XmlTypeAttribute.cs
- FloaterParagraph.cs
- ToolStripItemEventArgs.cs
- XmlAttributeProperties.cs
- DataExchangeServiceBinder.cs
- SrgsDocumentParser.cs
- XamlVector3DCollectionSerializer.cs
- GradientStop.cs
- securitycriticaldataClass.cs
- UInt32Storage.cs
- CodeRemoveEventStatement.cs
- XDeferredAxisSource.cs
- CodeGen.cs
- _Events.cs
- EFColumnProvider.cs
- TypeName.cs
- SoapAttributes.cs
- MessageQueuePermission.cs
- ListViewGroup.cs
- Console.cs
- DebugTrace.cs
- UserControlParser.cs
- DbProviderSpecificTypePropertyAttribute.cs
- MaterialCollection.cs
- InvalidComObjectException.cs
- SQLDateTimeStorage.cs
- XmlnsCompatibleWithAttribute.cs
- UInt64Storage.cs
- SchemaManager.cs