Code:
/ FX-1434 / FX-1434 / 1.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
- DataGridViewLinkCell.cs
- DataGridViewComponentPropertyGridSite.cs
- EntityParameterCollection.cs
- TextTabProperties.cs
- OpenTypeMethods.cs
- SrgsRulesCollection.cs
- TempEnvironment.cs
- ASCIIEncoding.cs
- RoleManagerModule.cs
- LineProperties.cs
- DesignerResources.cs
- BrowserPolicyValidator.cs
- DragDrop.cs
- LogAppendAsyncResult.cs
- DataBoundControlAdapter.cs
- TraceContextRecord.cs
- ClientFormsIdentity.cs
- AccessText.cs
- DataChangedEventManager.cs
- Trace.cs
- WebException.cs
- WorkflowDurableInstance.cs
- QueryIntervalOp.cs
- BufferedResponseStream.cs
- PropertyInformationCollection.cs
- TypographyProperties.cs
- CommonProperties.cs
- XhtmlBasicFormAdapter.cs
- VarRemapper.cs
- UseLicense.cs
- DataTableTypeConverter.cs
- TreeWalkHelper.cs
- ConfigXmlSignificantWhitespace.cs
- MaxValueConverter.cs
- CodeObject.cs
- Int32Rect.cs
- QuaternionRotation3D.cs
- ObjectStorage.cs
- XmlResolver.cs
- SqlDataSourceConfigureSelectPanel.cs
- TickBar.cs
- Transform.cs
- LogicalTreeHelper.cs
- EmptyWorkItem.cs
- CmsInterop.cs
- ItemContainerGenerator.cs
- DodSequenceMerge.cs
- TypeUtil.cs
- RepeatInfo.cs
- SqlConnectionHelper.cs
- DateTime.cs
- ScanQueryOperator.cs
- ScrollItemPatternIdentifiers.cs
- BufferBuilder.cs
- IODescriptionAttribute.cs
- SchemaTypeEmitter.cs
- HashMembershipCondition.cs
- MimePart.cs
- DBSqlParser.cs
- DataGridCell.cs
- TableProvider.cs
- ItemsControl.cs
- ConditionalWeakTable.cs
- TemplatePropertyEntry.cs
- Scheduler.cs
- Button.cs
- MetaModel.cs
- TextUtf8RawTextWriter.cs
- SerializationAttributes.cs
- Size.cs
- CompositeDataBoundControl.cs
- PasswordBox.cs
- StreamGeometry.cs
- OracleTransaction.cs
- AggregateNode.cs
- SamlSerializer.cs
- MemoryPressure.cs
- HttpProfileBase.cs
- Publisher.cs
- TreeNodeCollection.cs
- WebPartCatalogAddVerb.cs
- Point3DAnimationBase.cs
- LicenseContext.cs
- Int32Rect.cs
- OleDbWrapper.cs
- ContextBase.cs
- TreeNodeStyleCollection.cs
- Guid.cs
- SelectedPathEditor.cs
- InvalidFilterCriteriaException.cs
- ActiveDocumentEvent.cs
- WebPartTransformerCollection.cs
- ComboBoxItem.cs
- AbstractSvcMapFileLoader.cs
- DispatcherHookEventArgs.cs
- WebHttpElement.cs
- MaterializeFromAtom.cs
- CuspData.cs
- WebCategoryAttribute.cs
- ArrayTypeMismatchException.cs