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
- SessionEndingEventArgs.cs
- PointHitTestParameters.cs
- SqlDataSourceCommandEventArgs.cs
- CompiledRegexRunner.cs
- DetailsViewUpdateEventArgs.cs
- SerializationHelper.cs
- MappedMetaModel.cs
- ActivityInstance.cs
- DataSourceControlBuilder.cs
- ServiceMemoryGates.cs
- GridViewColumnCollection.cs
- ProxyOperationRuntime.cs
- CodeDOMUtility.cs
- Win32Exception.cs
- ExpressionVisitor.cs
- DesignParameter.cs
- Bits.cs
- MemberJoinTreeNode.cs
- RegionData.cs
- ExceptionTrace.cs
- ResourceDescriptionAttribute.cs
- WebMethodAttribute.cs
- RemotingException.cs
- MemoryFailPoint.cs
- HuffCodec.cs
- DesignTimeResourceProviderFactoryAttribute.cs
- SqlFactory.cs
- SiteMapNodeItemEventArgs.cs
- DirectoryInfo.cs
- DataShape.cs
- PropertyItemInternal.cs
- AccessibleObject.cs
- RotationValidation.cs
- SourceLocationProvider.cs
- mediapermission.cs
- ConfigurationProperty.cs
- CheckBoxFlatAdapter.cs
- DeflateStream.cs
- DomainUpDown.cs
- DataGridViewAdvancedBorderStyle.cs
- grammarelement.cs
- DataStorage.cs
- ScriptBehaviorDescriptor.cs
- ThreadPool.cs
- ConsoleTraceListener.cs
- ScriptModule.cs
- FullTextBreakpoint.cs
- GeometryConverter.cs
- AlphabetConverter.cs
- SqlParameterCollection.cs
- ProfilePropertyNameValidator.cs
- VerificationException.cs
- CleanUpVirtualizedItemEventArgs.cs
- ExpressionEditorAttribute.cs
- NominalTypeEliminator.cs
- Switch.cs
- PointLightBase.cs
- SQLInt64Storage.cs
- _UriTypeConverter.cs
- XmlFormatReaderGenerator.cs
- HMACSHA512.cs
- TextElementEnumerator.cs
- SiteMap.cs
- JsonReader.cs
- DependencyPropertyKind.cs
- TextSerializer.cs
- CompoundFileReference.cs
- PrimitiveXmlSerializers.cs
- NumberEdit.cs
- ListControlConvertEventArgs.cs
- TextModifier.cs
- GenerateHelper.cs
- ScrollPattern.cs
- ScrollBar.cs
- Model3D.cs
- DataGridViewLayoutData.cs
- SqlBulkCopyColumnMappingCollection.cs
- Menu.cs
- ExpandCollapseProviderWrapper.cs
- MsmqAuthenticationMode.cs
- TriggerBase.cs
- JumpTask.cs
- XmlDataSourceNodeDescriptor.cs
- Int64AnimationUsingKeyFrames.cs
- InputScopeConverter.cs
- DataGrid.cs
- Property.cs
- CodeConditionStatement.cs
- DecoderReplacementFallback.cs
- AnnotationElement.cs
- TypedDataSetSchemaImporterExtensionFx35.cs
- MouseGesture.cs
- EntityRecordInfo.cs
- typedescriptorpermissionattribute.cs
- CharKeyFrameCollection.cs
- XmlDataSourceView.cs
- RewritingSimplifier.cs
- ImageCollectionCodeDomSerializer.cs
- ProcessStartInfo.cs
- Interlocked.cs