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
- Interlocked.cs
- AssemblyInfo.cs
- AudioFormatConverter.cs
- StackSpiller.Generated.cs
- XmlDataSourceNodeDescriptor.cs
- Operator.cs
- MethodCallTranslator.cs
- ReadWriteControlDesigner.cs
- Completion.cs
- BitmapMetadata.cs
- ToolStripDropDownButton.cs
- CustomTokenProvider.cs
- DependencyProperty.cs
- XPathSingletonIterator.cs
- OracleString.cs
- ConditionalWeakTable.cs
- DATA_BLOB.cs
- Transform3DGroup.cs
- SQLInt16.cs
- ConfigurationStrings.cs
- EdmFunction.cs
- RuntimeWrappedException.cs
- RectangleConverter.cs
- OciLobLocator.cs
- RemotingException.cs
- PrivilegeNotHeldException.cs
- ResXDataNode.cs
- wmiutil.cs
- ValidationHelper.cs
- CompilationUnit.cs
- DeclarativeCatalogPart.cs
- HttpModulesSection.cs
- OciHandle.cs
- StringComparer.cs
- cookiecollection.cs
- SettingsSection.cs
- LineBreak.cs
- ColumnHeader.cs
- IgnoreFlushAndCloseStream.cs
- Control.cs
- DataTableNewRowEvent.cs
- ViewUtilities.cs
- GetKeyedHashRequest.cs
- XmlSchemaDatatype.cs
- TextTreeObjectNode.cs
- CodeTypeReferenceSerializer.cs
- XmlQueryTypeFactory.cs
- WindowsTreeView.cs
- WorkflowServiceBehavior.cs
- AutomationEvent.cs
- RectangleF.cs
- WebMethodAttribute.cs
- RichTextBox.cs
- BrowserCapabilitiesCodeGenerator.cs
- MsmqIntegrationBindingCollectionElement.cs
- WmlPhoneCallAdapter.cs
- ReadOnlyNameValueCollection.cs
- GlyphCollection.cs
- CLSCompliantAttribute.cs
- SmiRecordBuffer.cs
- __Error.cs
- ISCIIEncoding.cs
- ToolboxItemFilterAttribute.cs
- RelationshipWrapper.cs
- PersonalizationStateQuery.cs
- GatewayDefinition.cs
- Logging.cs
- SchemaTypeEmitter.cs
- WebResourceUtil.cs
- AutomationPatternInfo.cs
- safelinkcollection.cs
- TextOnlyOutput.cs
- MexHttpsBindingElement.cs
- COM2Properties.cs
- DataRecordInfo.cs
- DataGridViewTextBoxColumn.cs
- WindowsUpDown.cs
- TableParagraph.cs
- ClaimTypes.cs
- SqlNodeAnnotations.cs
- ObjectPropertyMapping.cs
- Directory.cs
- FieldCollectionEditor.cs
- MemberDomainMap.cs
- ImageListStreamer.cs
- TypeHelper.cs
- BitmapPalettes.cs
- WaitHandleCannotBeOpenedException.cs
- ClusterSafeNativeMethods.cs
- ViewBox.cs
- FormViewDeletedEventArgs.cs
- PermissionAttributes.cs
- PropertyEntry.cs
- ThreadAbortException.cs
- OletxResourceManager.cs
- IdentityManager.cs
- TablePatternIdentifiers.cs
- SystemResourceKey.cs
- DeviceContexts.cs
- RangeValueProviderWrapper.cs