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
- COSERVERINFO.cs
- FixedSOMPageConstructor.cs
- ReadOnlyNameValueCollection.cs
- MailMessageEventArgs.cs
- OptimizerPatterns.cs
- AgileSafeNativeMemoryHandle.cs
- ListView.cs
- XmlDataSourceView.cs
- KnownBoxes.cs
- Rect3DValueSerializer.cs
- ToolStripItemClickedEventArgs.cs
- MarkupCompilePass2.cs
- FixedSOMFixedBlock.cs
- EFDataModelProvider.cs
- CompiledELinqQueryState.cs
- DragDrop.cs
- ClientFormsIdentity.cs
- IndentedWriter.cs
- followingsibling.cs
- DBSchemaTable.cs
- WebPartDescription.cs
- PermissionAttributes.cs
- AttributeCollection.cs
- PermissionSetTriple.cs
- LogExtentCollection.cs
- SymbolMethod.cs
- UpdatePanel.cs
- PageBuildProvider.cs
- WindowsGrip.cs
- MainMenu.cs
- SelectionProcessor.cs
- WebPartAuthorizationEventArgs.cs
- ImageUrlEditor.cs
- SqlFormatter.cs
- WaitHandle.cs
- DataGridHyperlinkColumn.cs
- ResourcesBuildProvider.cs
- ViewGenResults.cs
- FrameworkRichTextComposition.cs
- XmlWriter.cs
- SettingsPropertyValueCollection.cs
- UnknownBitmapEncoder.cs
- __Filters.cs
- GridToolTip.cs
- Pen.cs
- TypeProvider.cs
- XmlValueConverter.cs
- AdapterUtil.cs
- Timeline.cs
- LambdaCompiler.cs
- RenderDataDrawingContext.cs
- ExcCanonicalXml.cs
- HttpPostedFileBase.cs
- DesignTableCollection.cs
- RectangleHotSpot.cs
- ItemsControlAutomationPeer.cs
- WindowsRebar.cs
- DataSourceHelper.cs
- ApplicationInfo.cs
- BindingManagerDataErrorEventArgs.cs
- VirtualPathProvider.cs
- ProtocolsConfigurationEntry.cs
- TextParagraphCache.cs
- VBIdentifierDesigner.xaml.cs
- ToolBarTray.cs
- ChildChangedEventArgs.cs
- OleAutBinder.cs
- ProtocolState.cs
- AnonymousIdentificationModule.cs
- ApplicationServicesHostFactory.cs
- ErrorHandlingReceiver.cs
- WebContext.cs
- xdrvalidator.cs
- GeneralTransform.cs
- ButtonFieldBase.cs
- DtrList.cs
- GlobalizationAssembly.cs
- keycontainerpermission.cs
- EllipseGeometry.cs
- ValidationPropertyAttribute.cs
- MetroSerializationManager.cs
- SpecialNameAttribute.cs
- IgnoreDeviceFilterElement.cs
- ProgressBarHighlightConverter.cs
- XmlWhitespace.cs
- ReadOnlyPropertyMetadata.cs
- _TLSstream.cs
- DataTemplateSelector.cs
- ListViewUpdatedEventArgs.cs
- Rect3D.cs
- MethodExpr.cs
- ArcSegment.cs
- WriteTimeStream.cs
- OneOfConst.cs
- ValueConversionAttribute.cs
- XmlEncoding.cs
- ToolBarPanel.cs
- EventLogPermissionEntry.cs
- RefreshPropertiesAttribute.cs
- EntityDataSource.cs