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
- CompatibleComparer.cs
- ListControlStringCollectionEditor.cs
- DesignOnlyAttribute.cs
- Component.cs
- TypeSystem.cs
- EntityContainerRelationshipSetEnd.cs
- StreamReader.cs
- XmlDataSource.cs
- LineServices.cs
- _UriSyntax.cs
- FileUtil.cs
- DisplayNameAttribute.cs
- LogSwitch.cs
- DynamicQueryableWrapper.cs
- UserNameSecurityToken.cs
- StreamReader.cs
- DataBindingHandlerAttribute.cs
- ValidationPropertyAttribute.cs
- PageThemeCodeDomTreeGenerator.cs
- ItemMap.cs
- DataGridViewAutoSizeColumnsModeEventArgs.cs
- CanonicalXml.cs
- ConnectionPool.cs
- DocumentPageViewAutomationPeer.cs
- FrameworkContentElement.cs
- TypeConverterMarkupExtension.cs
- PeerObject.cs
- KeyFrames.cs
- SoapInteropTypes.cs
- Mapping.cs
- XmlAtomErrorReader.cs
- SystemFonts.cs
- sqlnorm.cs
- InvalidOperationException.cs
- QilReplaceVisitor.cs
- x509utils.cs
- ProcessInfo.cs
- XmlSchemaAttributeGroup.cs
- Visual3D.cs
- TypeExtensionConverter.cs
- PreProcessor.cs
- HMACSHA512.cs
- ResourceCategoryAttribute.cs
- ReferenceConverter.cs
- ButtonField.cs
- FixedSOMElement.cs
- EncoderParameter.cs
- DataFormats.cs
- ThousandthOfEmRealDoubles.cs
- AddDataControlFieldDialog.cs
- FixedNode.cs
- StyleCollectionEditor.cs
- SamlNameIdentifierClaimResource.cs
- Tool.cs
- XmlMapping.cs
- shaperfactory.cs
- OdbcPermission.cs
- SqlBuffer.cs
- KnownBoxes.cs
- InputReportEventArgs.cs
- MetadataFile.cs
- TextEditorTables.cs
- AQNBuilder.cs
- FtpWebResponse.cs
- FileResponseElement.cs
- Instrumentation.cs
- GridEntry.cs
- OpenFileDialog.cs
- activationcontext.cs
- XmlSchemaGroup.cs
- ConstraintConverter.cs
- InputQueueChannel.cs
- DataGridViewRowsRemovedEventArgs.cs
- CodeArrayCreateExpression.cs
- AssemblyCache.cs
- TimeStampChecker.cs
- PropertyPath.cs
- MethodImplAttribute.cs
- SourceLineInfo.cs
- CryptoHelper.cs
- PropertiesTab.cs
- StringCollectionEditor.cs
- CheckBoxAutomationPeer.cs
- ListViewPagedDataSource.cs
- TagPrefixCollection.cs
- StreamResourceInfo.cs
- xml.cs
- EastAsianLunisolarCalendar.cs
- LicFileLicenseProvider.cs
- ApplicationFileParser.cs
- UIElementHelper.cs
- SemaphoreSlim.cs
- AttributeCollection.cs
- DeclarationUpdate.cs
- MultiPageTextView.cs
- DataGridViewDesigner.cs
- X509ThumbprintKeyIdentifierClause.cs
- SignatureResourcePool.cs
- MailWebEventProvider.cs
- ClientRoleProvider.cs