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
- HostExecutionContextManager.cs
- TableStyle.cs
- ScriptRegistrationManager.cs
- ExpressionBuilderCollection.cs
- LicenseException.cs
- SecurityDocument.cs
- ObjectTag.cs
- LocalizationParserHooks.cs
- Part.cs
- Visitors.cs
- XmlArrayItemAttribute.cs
- SqlFunctionAttribute.cs
- MatchingStyle.cs
- UserCancellationException.cs
- MemberInfoSerializationHolder.cs
- MaskInputRejectedEventArgs.cs
- StylusTip.cs
- Property.cs
- FlowDocumentReaderAutomationPeer.cs
- Transform.cs
- UiaCoreApi.cs
- HtmlInputText.cs
- DesignerDataStoredProcedure.cs
- SendParametersContent.cs
- RequestQueue.cs
- DataGridView.cs
- LoginView.cs
- RuntimeCompatibilityAttribute.cs
- IdentifierService.cs
- PageThemeCodeDomTreeGenerator.cs
- AuthenticationModeHelper.cs
- TripleDESCryptoServiceProvider.cs
- IncrementalHitTester.cs
- OdbcDataReader.cs
- EventRoute.cs
- PropertyBuilder.cs
- InfoCardRSAPKCS1SignatureDeformatter.cs
- ResourcesGenerator.cs
- DataSourceXmlSubItemAttribute.cs
- CommentGlyph.cs
- ObjectStorage.cs
- CheckBoxField.cs
- NameTable.cs
- PageThemeParser.cs
- DetailsViewPageEventArgs.cs
- MultiBindingExpression.cs
- Grid.cs
- XPathExpr.cs
- _BaseOverlappedAsyncResult.cs
- ExternalException.cs
- EventMappingSettingsCollection.cs
- MobileContainerDesigner.cs
- XamlSerializerUtil.cs
- ListBindingConverter.cs
- MessageOperationFormatter.cs
- ExpressionList.cs
- KeyFrames.cs
- TableLayout.cs
- Thumb.cs
- ConstraintStruct.cs
- AssemblyNameUtility.cs
- CaseInsensitiveComparer.cs
- MultilineStringConverter.cs
- CodePageEncoding.cs
- HideDisabledControlAdapter.cs
- ToolBarPanel.cs
- RelatedImageListAttribute.cs
- Pipe.cs
- GridViewRowEventArgs.cs
- InvalidDocumentContentsException.cs
- GridPattern.cs
- Baml6ConstructorInfo.cs
- CapabilitiesRule.cs
- TrackBarRenderer.cs
- MenuItemStyleCollection.cs
- WebServiceResponseDesigner.cs
- RSACryptoServiceProvider.cs
- WindowsPen.cs
- AutomationPropertyInfo.cs
- MethodImplAttribute.cs
- arclist.cs
- QilReference.cs
- EventRoute.cs
- Emitter.cs
- XmlMessageFormatter.cs
- TypeValidationEventArgs.cs
- IISMapPath.cs
- HtmlTextArea.cs
- SHA384Managed.cs
- PointLightBase.cs
- InputQueue.cs
- XmlNavigatorFilter.cs
- SchemaCollectionPreprocessor.cs
- EnumerableRowCollectionExtensions.cs
- HandlerMappingMemo.cs
- BuilderPropertyEntry.cs
- ProviderMetadata.cs
- QueueProcessor.cs
- HwndSubclass.cs
- BaseCodeDomTreeGenerator.cs