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
- SqlConnectionStringBuilder.cs
- _HelperAsyncResults.cs
- XmlValidatingReader.cs
- WebPartZoneBase.cs
- Menu.cs
- XsltOutput.cs
- RegexWorker.cs
- SourceFileInfo.cs
- SchemaElement.cs
- DataStreamFromComStream.cs
- IndexerNameAttribute.cs
- ParserContext.cs
- MembershipSection.cs
- WebPartTracker.cs
- SoapDocumentMethodAttribute.cs
- LinkButton.cs
- Solver.cs
- CodeCompileUnit.cs
- RuleSettingsCollection.cs
- documentsequencetextview.cs
- DocumentManager.cs
- TypeGeneratedEventArgs.cs
- ParameterToken.cs
- TokenCreationException.cs
- TypedElement.cs
- DynamicValidatorEventArgs.cs
- ExpandCollapsePattern.cs
- EmbossBitmapEffect.cs
- ConfigurationPermission.cs
- SerializationObjectManager.cs
- ServicePointManagerElement.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- SessionIDManager.cs
- PowerStatus.cs
- WorkflowDesigner.cs
- Bits.cs
- ButtonFieldBase.cs
- Viewport3DVisual.cs
- ItemCheckEvent.cs
- LineSegment.cs
- CheckBoxFlatAdapter.cs
- ExclusiveCanonicalizationTransform.cs
- Script.cs
- ProcessModelInfo.cs
- CultureMapper.cs
- WebServiceClientProxyGenerator.cs
- StringResourceManager.cs
- BooleanStorage.cs
- EntityDataSourceStatementEditor.cs
- ProtectedConfigurationSection.cs
- SmiContextFactory.cs
- WindowsToolbarAsMenu.cs
- LinqDataSourceValidationException.cs
- HttpListenerPrefixCollection.cs
- CodeExpressionStatement.cs
- ArrayElementGridEntry.cs
- XmlQueryContext.cs
- ParameterModifier.cs
- XmlDataSourceNodeDescriptor.cs
- XslException.cs
- DbException.cs
- CellNormalizer.cs
- OdbcUtils.cs
- HttpHandlerAction.cs
- CapabilitiesUse.cs
- RMEnrollmentPage1.cs
- RouteValueDictionary.cs
- SqlDependencyListener.cs
- ColumnWidthChangingEvent.cs
- DBSchemaTable.cs
- WmlSelectionListAdapter.cs
- ProcessInfo.cs
- OdbcTransaction.cs
- PathGeometry.cs
- LockCookie.cs
- AlphabetConverter.cs
- CodeValidator.cs
- PathGeometry.cs
- BevelBitmapEffect.cs
- Automation.cs
- TraceData.cs
- TripleDESCryptoServiceProvider.cs
- AccessKeyManager.cs
- WebPartMinimizeVerb.cs
- AnimationClock.cs
- FormatConvertedBitmap.cs
- WSHttpBindingElement.cs
- EntitySet.cs
- OdbcFactory.cs
- Typeface.cs
- SoapDocumentServiceAttribute.cs
- MustUnderstandBehavior.cs
- MsmqPoisonMessageException.cs
- PointF.cs
- GatewayDefinition.cs
- TextBoxAutomationPeer.cs
- Focus.cs
- ListChunk.cs
- TextCompositionEventArgs.cs
- RequestQueue.cs