Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / xsp / System / Web / Configuration / SiteMapSection.cs / 5 / 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. // //----------------------------------------------------------------------------- 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- OdbcInfoMessageEvent.cs
- WindowsAuthenticationModule.cs
- DropSourceBehavior.cs
- DataGridViewLinkColumn.cs
- SchemaCollectionCompiler.cs
- DictionaryContent.cs
- SelectionItemProviderWrapper.cs
- TextSchema.cs
- KeyEvent.cs
- TagPrefixInfo.cs
- MachineSettingsSection.cs
- ReliabilityContractAttribute.cs
- TrackingRecord.cs
- PopupRootAutomationPeer.cs
- WorkflowMarkupSerializationException.cs
- NavigationPropertyEmitter.cs
- CodeMethodReturnStatement.cs
- ValueTypePropertyReference.cs
- BaseValidator.cs
- XmlDataContract.cs
- MembershipSection.cs
- DebuggerService.cs
- InputScopeNameConverter.cs
- AsyncOperationManager.cs
- ZipIOCentralDirectoryFileHeader.cs
- Dynamic.cs
- UpdatePanel.cs
- AttributeXamlType.cs
- SqlNotificationEventArgs.cs
- FilterableAttribute.cs
- UICuesEvent.cs
- WindowsAuthenticationEventArgs.cs
- AesCryptoServiceProvider.cs
- DirectoryObjectSecurity.cs
- ProcessHostMapPath.cs
- TCEAdapterGenerator.cs
- KeyTime.cs
- Error.cs
- WebPartActionVerb.cs
- DocumentPaginator.cs
- LZCodec.cs
- DbCommandDefinition.cs
- ApplicationHost.cs
- EncryptedReference.cs
- ImportContext.cs
- ConfigViewGenerator.cs
- ValidationRule.cs
- SoapReflectionImporter.cs
- ConfigurationStrings.cs
- StringBuilder.cs
- COM2PropertyDescriptor.cs
- MimeObjectFactory.cs
- BoundColumn.cs
- PipelineModuleStepContainer.cs
- XsltQilFactory.cs
- Annotation.cs
- ZipIOModeEnforcingStream.cs
- Collection.cs
- FileUtil.cs
- _ProxyChain.cs
- CompModSwitches.cs
- SplitterPanel.cs
- FileDetails.cs
- XmlTypeMapping.cs
- BuildResultCache.cs
- XmlTextReader.cs
- OLEDB_Util.cs
- KeyTime.cs
- SignedXml.cs
- _BaseOverlappedAsyncResult.cs
- SQLResource.cs
- SqlNodeAnnotations.cs
- WebPartEventArgs.cs
- COAUTHIDENTITY.cs
- SafeNativeMethods.cs
- Converter.cs
- ImageCodecInfoPrivate.cs
- DbConnectionHelper.cs
- DateRangeEvent.cs
- SecurityBindingElement.cs
- FacetEnabledSchemaElement.cs
- TimeStampChecker.cs
- FilteredAttributeCollection.cs
- BulletedListEventArgs.cs
- HebrewNumber.cs
- PublishLicense.cs
- TreeNodeEventArgs.cs
- RoleManagerModule.cs
- CookielessHelper.cs
- ExpressionTable.cs
- oledbmetadatacollectionnames.cs
- HttpPostedFile.cs
- XmlUrlResolver.cs
- PathStreamGeometryContext.cs
- GC.cs
- ViewManagerAttribute.cs
- FileDialog.cs
- MsmqReceiveHelper.cs
- NonVisualControlAttribute.cs
- DocumentPage.cs