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
- XmlBufferedByteStreamReader.cs
- XmlSchemaComplexContent.cs
- DataGridViewRowCollection.cs
- IsolationInterop.cs
- xmlfixedPageInfo.cs
- UInt64Storage.cs
- ELinqQueryState.cs
- CopyOnWriteList.cs
- SystemException.cs
- Operator.cs
- ObservableCollection.cs
- ZipIOCentralDirectoryBlock.cs
- GroupDescription.cs
- SecureEnvironment.cs
- DataServiceHostFactory.cs
- CalendarDataBindingHandler.cs
- Header.cs
- UrlMapping.cs
- SendActivityValidator.cs
- HashJoinQueryOperatorEnumerator.cs
- PopupRoot.cs
- ExceptionRoutedEventArgs.cs
- CodeExpressionStatement.cs
- VisualStyleInformation.cs
- Pens.cs
- TransferRequestHandler.cs
- XmlSchemaSimpleContent.cs
- WorkflowRuntimeServiceElement.cs
- NativeMethods.cs
- VisualBrush.cs
- AnimationClockResource.cs
- AssertSection.cs
- CroppedBitmap.cs
- MenuStrip.cs
- HttpRequestCacheValidator.cs
- SelectionPattern.cs
- x509utils.cs
- MonitorWrapper.cs
- SmtpSection.cs
- XPathNode.cs
- OracleNumber.cs
- HotSpot.cs
- TransactionFlowBindingElement.cs
- SiteMapProvider.cs
- ReadWriteObjectLock.cs
- HyperLinkField.cs
- FileDialogCustomPlacesCollection.cs
- PropertyBuilder.cs
- TreeNodeCollection.cs
- EventProxy.cs
- Base64Decoder.cs
- DataGridViewCellStateChangedEventArgs.cs
- DataBinder.cs
- UnsafeNativeMethods.cs
- Effect.cs
- QueryCoreOp.cs
- WSHttpBindingBase.cs
- ProcessProtocolHandler.cs
- ManifestResourceInfo.cs
- CompiledIdentityConstraint.cs
- DbParameterCollectionHelper.cs
- StructuralType.cs
- Cell.cs
- UIElementCollection.cs
- TagPrefixAttribute.cs
- Icon.cs
- XamlPointCollectionSerializer.cs
- _ShellExpression.cs
- Win32Native.cs
- DataRelationCollection.cs
- EqualityComparer.cs
- remotingproxy.cs
- ALinqExpressionVisitor.cs
- SafeThreadHandle.cs
- PeerEndPoint.cs
- PropertyState.cs
- HandoffBehavior.cs
- StatusBarItemAutomationPeer.cs
- PerfCounters.cs
- RemoteWebConfigurationHostStream.cs
- MessageFilter.cs
- ColorInterpolationModeValidation.cs
- initElementDictionary.cs
- XmlDataSourceNodeDescriptor.cs
- VoiceObjectToken.cs
- CurrentTimeZone.cs
- BinaryConverter.cs
- IODescriptionAttribute.cs
- ThreadStateException.cs
- OleDbParameterCollection.cs
- DataFormats.cs
- SystemNetworkInterface.cs
- SqlDataSourceCustomCommandPanel.cs
- ResourceExpressionBuilder.cs
- FocusChangedEventArgs.cs
- RangeValuePatternIdentifiers.cs
- TripleDESCryptoServiceProvider.cs
- EdmProviderManifest.cs
- DataRecordObjectView.cs
- ConfigPathUtility.cs