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
- ListViewInsertedEventArgs.cs
- CssStyleCollection.cs
- LicenseException.cs
- OpCopier.cs
- ClientRuntimeConfig.cs
- ObfuscationAttribute.cs
- IdnMapping.cs
- InstanceLockTracking.cs
- ImpersonationOption.cs
- XPathChildIterator.cs
- WhitespaceRuleLookup.cs
- SchemaHelper.cs
- Condition.cs
- FormParameter.cs
- ListItemParagraph.cs
- TextTreeTextNode.cs
- MonikerSyntaxException.cs
- XmlElementAttribute.cs
- HideDisabledControlAdapter.cs
- AsyncStreamReader.cs
- XappLauncher.cs
- DragDrop.cs
- TableProvider.cs
- BufferedWebEventProvider.cs
- CryptoConfig.cs
- ProcessHostConfigUtils.cs
- SelectedCellsCollection.cs
- EntitySqlQueryState.cs
- FixUp.cs
- EntityCommandExecutionException.cs
- Label.cs
- LineBreakRecord.cs
- StringExpressionSet.cs
- SystemSounds.cs
- PointLight.cs
- TimeSpanValidatorAttribute.cs
- ClientBuildManagerCallback.cs
- AddInServer.cs
- MatrixAnimationBase.cs
- TreeViewImageKeyConverter.cs
- InfocardExtendedInformationCollection.cs
- EntityContainer.cs
- JavaScriptString.cs
- TreeNode.cs
- NegotiationTokenProvider.cs
- WindowsGraphicsWrapper.cs
- CatalogPart.cs
- SecondaryIndexDefinition.cs
- httpstaticobjectscollection.cs
- XmlChildEnumerator.cs
- BitmapEffectInput.cs
- TraceData.cs
- BatchServiceHost.cs
- EntityChangedParams.cs
- ExplicitDiscriminatorMap.cs
- PasswordBoxAutomationPeer.cs
- BindingContext.cs
- ManagementOptions.cs
- TdsParserSafeHandles.cs
- PrePostDescendentsWalker.cs
- CrossAppDomainChannel.cs
- X509CertificateCollection.cs
- Pens.cs
- DependencyPropertyKind.cs
- SRef.cs
- PersistenceTypeAttribute.cs
- StylusPoint.cs
- TreeNodeBindingCollection.cs
- ToolStripTextBox.cs
- TreeViewDesigner.cs
- OrderedDictionaryStateHelper.cs
- HelpKeywordAttribute.cs
- ParserOptions.cs
- DataGridViewSelectedCellsAccessibleObject.cs
- System.Data.OracleClient_BID.cs
- EmptyEnumerator.cs
- ProfileManager.cs
- WindowsStatic.cs
- InheritanceUI.cs
- LogSwitch.cs
- HttpProfileBase.cs
- DocumentGridPage.cs
- MatrixTransform3D.cs
- ReaderWriterLockWrapper.cs
- ActivatedMessageQueue.cs
- D3DImage.cs
- EdmEntityTypeAttribute.cs
- ContainerControlDesigner.cs
- CriticalExceptions.cs
- Missing.cs
- PolicyManager.cs
- XmlWriter.cs
- BitmapEffectGroup.cs
- GridViewCancelEditEventArgs.cs
- SendMailErrorEventArgs.cs
- bidPrivateBase.cs
- TextInfo.cs
- HotCommands.cs
- VScrollProperties.cs
- DoWhile.cs