Code:
/ DotNET / DotNET / 8.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
- ValidatorCompatibilityHelper.cs
- SurrogateSelector.cs
- DataDocumentXPathNavigator.cs
- ProfileGroupSettingsCollection.cs
- DataTableMappingCollection.cs
- EntityCommandExecutionException.cs
- ToggleButton.cs
- PagesSection.cs
- TextElementAutomationPeer.cs
- ColumnHeader.cs
- QilGenerator.cs
- PieceNameHelper.cs
- XPathParser.cs
- RootProjectionNode.cs
- DataSourceUtil.cs
- HttpCachePolicyBase.cs
- Int32.cs
- Debugger.cs
- QueryRewriter.cs
- ColorConvertedBitmapExtension.cs
- AliasExpr.cs
- SplitterCancelEvent.cs
- GlyphShapingProperties.cs
- Enum.cs
- VisualStyleInformation.cs
- Debug.cs
- CodeCompileUnit.cs
- pingexception.cs
- ColorDialog.cs
- baseshape.cs
- CalendarBlackoutDatesCollection.cs
- TimeZone.cs
- TrustSection.cs
- StringDictionary.cs
- DataGridItemCollection.cs
- DbgUtil.cs
- MessageQueueCriteria.cs
- KnownBoxes.cs
- ObjectDesignerDataSourceView.cs
- JpegBitmapDecoder.cs
- TypeDescriptionProvider.cs
- InstanceDescriptor.cs
- ContentPresenter.cs
- RuleRef.cs
- TreeViewItem.cs
- EncoderBestFitFallback.cs
- SafeHandles.cs
- SqlCaseSimplifier.cs
- DataGridViewButtonColumn.cs
- EntityContainer.cs
- StreamReader.cs
- ListViewHitTestInfo.cs
- MaskPropertyEditor.cs
- RadioButtonAutomationPeer.cs
- UrlEncodedParameterWriter.cs
- InvalidCastException.cs
- MultilineStringConverter.cs
- DropShadowBitmapEffect.cs
- CertificateElement.cs
- UrlAuthFailedErrorFormatter.cs
- Array.cs
- ConfigurationValue.cs
- ToolStripContentPanel.cs
- AutoCompleteStringCollection.cs
- Calendar.cs
- sqlinternaltransaction.cs
- XmlTextReaderImplHelpers.cs
- ConfigurationStrings.cs
- SQLMembershipProvider.cs
- UTF7Encoding.cs
- __Filters.cs
- CodeSnippetCompileUnit.cs
- HScrollProperties.cs
- BackgroundFormatInfo.cs
- EntityDataSourceValidationException.cs
- SizeAnimationClockResource.cs
- RSAPKCS1SignatureDeformatter.cs
- GraphicsContainer.cs
- SQLRoleProvider.cs
- DescendantQuery.cs
- Unit.cs
- EnumerableCollectionView.cs
- MenuScrollingVisibilityConverter.cs
- EventData.cs
- PasswordRecovery.cs
- CryptoStream.cs
- XmlProcessingInstruction.cs
- UserControl.cs
- KeyConverter.cs
- Hash.cs
- FontNamesConverter.cs
- ApplicationTrust.cs
- HttpResponse.cs
- SQLCharsStorage.cs
- ExpressionBindingCollection.cs
- WebPartVerb.cs
- RemotingAttributes.cs
- ParseHttpDate.cs
- StackBuilderSink.cs
- SoapAttributes.cs