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
- RelationshipFixer.cs
- StatusBarItem.cs
- X509CertificateRecipientServiceCredential.cs
- NoClickablePointException.cs
- externdll.cs
- SerialReceived.cs
- WebEventTraceProvider.cs
- DockAndAnchorLayout.cs
- SymbolResolver.cs
- DispatcherOperation.cs
- SequentialUshortCollection.cs
- DropDownList.cs
- WindowsTitleBar.cs
- DirectoryNotFoundException.cs
- RowSpanVector.cs
- ScriptManagerProxy.cs
- PropertyGeneratedEventArgs.cs
- _NegoState.cs
- HandlerFactoryWrapper.cs
- DocumentOrderQuery.cs
- Registry.cs
- XmlAtomicValue.cs
- GeneralTransform.cs
- DataMisalignedException.cs
- BindingSource.cs
- WindowsGrip.cs
- PropertyConverter.cs
- ExtensionDataReader.cs
- Manipulation.cs
- ImportContext.cs
- TabletCollection.cs
- XmlEncodedRawTextWriter.cs
- TextEditorSelection.cs
- NameSpaceExtractor.cs
- SoapReflectionImporter.cs
- GlyphRun.cs
- BindToObject.cs
- FormsAuthenticationModule.cs
- RepeaterCommandEventArgs.cs
- compensatingcollection.cs
- TranslateTransform3D.cs
- ExternalException.cs
- AlignmentYValidation.cs
- HtmlToClrEventProxy.cs
- DynamicScriptObject.cs
- TraceContext.cs
- TextDocumentView.cs
- WrappingXamlSchemaContext.cs
- CornerRadius.cs
- Positioning.cs
- BuildProvider.cs
- ToolStripOverflowButton.cs
- TextBoxLine.cs
- XmlNotation.cs
- WebResponse.cs
- BrowserCapabilitiesCompiler.cs
- RequestReplyCorrelator.cs
- Translator.cs
- Int32Converter.cs
- DeleteMemberBinder.cs
- TextEmbeddedObject.cs
- CorrelationManager.cs
- SequenceQuery.cs
- CorrelationService.cs
- MultiView.cs
- Control.cs
- PrivateFontCollection.cs
- DeploymentSection.cs
- HttpFileCollection.cs
- DocumentSchemaValidator.cs
- Section.cs
- ListViewSelectEventArgs.cs
- BoolLiteral.cs
- ConnectionInterfaceCollection.cs
- XslAstAnalyzer.cs
- XpsManager.cs
- NominalTypeEliminator.cs
- Span.cs
- AsymmetricSecurityBindingElement.cs
- GregorianCalendarHelper.cs
- WindowsGraphics2.cs
- MetadataUtilsSmi.cs
- ExpanderAutomationPeer.cs
- ImageField.cs
- UnsafeNativeMethods.cs
- SerialErrors.cs
- ToolStripPanelRenderEventArgs.cs
- TextServicesPropertyRanges.cs
- ObjectItemCollection.cs
- ItemCollectionEditor.cs
- InternalRelationshipCollection.cs
- RouteUrlExpressionBuilder.cs
- DockPanel.cs
- CapabilitiesUse.cs
- BuildResult.cs
- XmlDownloadManager.cs
- ConfigurationManagerInternalFactory.cs
- CodeBinaryOperatorExpression.cs
- Vector3DValueSerializer.cs
- AccessedThroughPropertyAttribute.cs