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
- DispatcherOperation.cs
- HtmlImage.cs
- FixedTextSelectionProcessor.cs
- ExtenderProvidedPropertyAttribute.cs
- RuntimeVariableList.cs
- PrintController.cs
- ObjectAnimationUsingKeyFrames.cs
- ContractMapping.cs
- SmiConnection.cs
- TypeGenericEnumerableViewSchema.cs
- DependencyObjectPropertyDescriptor.cs
- Keywords.cs
- ConnectionStringsSection.cs
- CursorConverter.cs
- CharStorage.cs
- ToolStripComboBox.cs
- OracleRowUpdatingEventArgs.cs
- EventRoute.cs
- Errors.cs
- SQLRoleProvider.cs
- ConversionValidationRule.cs
- ScrollProviderWrapper.cs
- TcpChannelHelper.cs
- WebPart.cs
- XmlChildEnumerator.cs
- HtmlInputCheckBox.cs
- DbProviderConfigurationHandler.cs
- TemplateFactory.cs
- ObjectContextServiceProvider.cs
- Thickness.cs
- References.cs
- DeclarativeCatalogPart.cs
- StringOutput.cs
- ClientCultureInfo.cs
- StoreAnnotationsMap.cs
- DataServiceEntityAttribute.cs
- SimpleMailWebEventProvider.cs
- BaseCollection.cs
- TraceXPathNavigator.cs
- DataGridParentRows.cs
- Activity.cs
- DataServiceExpressionVisitor.cs
- WpfMemberInvoker.cs
- RegexInterpreter.cs
- PtsCache.cs
- UIElementHelper.cs
- sqlpipe.cs
- RawUIStateInputReport.cs
- Publisher.cs
- ProxyWebPartConnectionCollection.cs
- DataGrid.cs
- ComponentResourceKey.cs
- ServiceDesigner.cs
- PackageRelationshipCollection.cs
- StoragePropertyMapping.cs
- linebase.cs
- Bitmap.cs
- SchemaTableColumn.cs
- DataGridViewCellValidatingEventArgs.cs
- ChildTable.cs
- DataGridViewColumnConverter.cs
- ApplicationSecurityManager.cs
- AppDomainCompilerProxy.cs
- ItemCheckedEvent.cs
- XPathConvert.cs
- CompositeScriptReferenceEventArgs.cs
- HtmlInputImage.cs
- RijndaelManagedTransform.cs
- IndexerNameAttribute.cs
- UpdateManifestForBrowserApplication.cs
- SmtpFailedRecipientException.cs
- MetadataPropertyvalue.cs
- Helpers.cs
- Rights.cs
- TextSearch.cs
- PointCollectionConverter.cs
- ListControlStringCollectionEditor.cs
- FontFamily.cs
- MouseCaptureWithinProperty.cs
- DirectionalLight.cs
- METAHEADER.cs
- HandlerBase.cs
- HtmlTableRow.cs
- Effect.cs
- CultureInfo.cs
- InheritablePropertyChangeInfo.cs
- DataGridViewCellEventArgs.cs
- _NetworkingPerfCounters.cs
- XmlBufferReader.cs
- MemberJoinTreeNode.cs
- HtmlTableCell.cs
- KeyFrames.cs
- OdbcInfoMessageEvent.cs
- TextSegment.cs
- Schema.cs
- Compress.cs
- InputLanguageEventArgs.cs
- TextRunCacheImp.cs
- XmlCodeExporter.cs
- GraphicsPathIterator.cs