Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / Configuration / ProfileSection.cs / 3 / ProfileSection.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.Web.Util; using System.Security.Permissions; /**/ [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class ProfileSection : ConfigurationSection { private static ConfigurationPropertyCollection _properties; private static readonly ConfigurationProperty _propEnabled = new ConfigurationProperty("enabled", typeof(bool), true, ConfigurationPropertyOptions.None); private static readonly ConfigurationProperty _propDefaultProvider = new ConfigurationProperty("defaultProvider", typeof(string), "AspNetSqlProfileProvider", null, StdValidatorsAndConverters.NonEmptyStringValidator, ConfigurationPropertyOptions.None); private static readonly ConfigurationProperty _propProviders = new ConfigurationProperty("providers", typeof(ProviderSettingsCollection), null, ConfigurationPropertyOptions.None); private static readonly ConfigurationProperty _propProfile = new ConfigurationProperty("properties", typeof(RootProfilePropertySettingsCollection), null, ConfigurationPropertyOptions.IsDefaultCollection); private static readonly ConfigurationProperty _propInherits = new ConfigurationProperty("inherits", typeof(string), String.Empty, ConfigurationPropertyOptions.None); private static readonly ConfigurationProperty _propAutomaticSaveEnabled = new ConfigurationProperty("automaticSaveEnabled", typeof(bool), true, ConfigurationPropertyOptions.None); static ProfileSection() { // Property initialization _properties = new ConfigurationPropertyCollection(); _properties.Add(_propEnabled); _properties.Add(_propDefaultProvider); _properties.Add(_propProviders); _properties.Add(_propProfile); _properties.Add(_propInherits); _properties.Add(_propAutomaticSaveEnabled); } private long _recompilationHash; private bool _recompilationHashCached; internal long RecompilationHash { get { if (!_recompilationHashCached) { _recompilationHash = CalculateHash(); _recompilationHashCached = true; } return _recompilationHash; } } private long CalculateHash() { HashCodeCombiner hashCombiner = new HashCodeCombiner(); CalculateProfilePropertySettingsHash(PropertySettings, hashCombiner); if (PropertySettings != null) { foreach (ProfileGroupSettings pgs in PropertySettings.GroupSettings) { hashCombiner.AddObject(pgs.Name); CalculateProfilePropertySettingsHash(pgs.PropertySettings, hashCombiner); } } return hashCombiner.CombinedHash; } private void CalculateProfilePropertySettingsHash( ProfilePropertySettingsCollection settings, HashCodeCombiner hashCombiner) { foreach (ProfilePropertySettings pps in settings) { hashCombiner.AddObject(pps.Name); hashCombiner.AddObject(pps.Type); } } public ProfileSection() { } protected override ConfigurationPropertyCollection Properties { get { return _properties; } } [ConfigurationProperty("automaticSaveEnabled", DefaultValue = true)] public bool AutomaticSaveEnabled { get { return (bool)base[_propAutomaticSaveEnabled]; } set { base[_propAutomaticSaveEnabled] = value; } } [ConfigurationProperty("enabled", DefaultValue = true)] public bool Enabled { get { return (bool)base[_propEnabled]; } set { base[_propEnabled] = value; } } [ConfigurationProperty("defaultProvider", DefaultValue = "AspNetSqlProfileProvider")] [StringValidator(MinLength = 1)] public string DefaultProvider { get { return (string)base[_propDefaultProvider]; } set { base[_propDefaultProvider] = value; } } [ConfigurationProperty("inherits", DefaultValue = "")] public string Inherits { get { return (string)base[_propInherits]; } set { base[_propInherits] = value; } } [ConfigurationProperty("providers")] public ProviderSettingsCollection Providers { get { return (ProviderSettingsCollection)base[_propProviders]; } } // not exposed to the API [ConfigurationProperty("properties")] public RootProfilePropertySettingsCollection PropertySettings { get { return (RootProfilePropertySettingsCollection)base[_propProfile]; } } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- RubberbandSelector.cs
- LogEntry.cs
- SID.cs
- EntityDataSourceDesignerHelper.cs
- WindowsAuthenticationModule.cs
- XmlReader.cs
- EntryIndex.cs
- DoubleCollection.cs
- ActionFrame.cs
- WebService.cs
- SortedSetDebugView.cs
- WebPartMinimizeVerb.cs
- TheQuery.cs
- UserNameSecurityToken.cs
- TraceSection.cs
- Message.cs
- UnmanagedBitmapWrapper.cs
- MenuItemAutomationPeer.cs
- LinearQuaternionKeyFrame.cs
- MobileSysDescriptionAttribute.cs
- HttpConfigurationContext.cs
- UpdateTranslator.cs
- ExecutionEngineException.cs
- DummyDataSource.cs
- Action.cs
- SQLConvert.cs
- DefaultValueAttribute.cs
- RelationalExpressions.cs
- SafeCryptoHandles.cs
- FormViewPageEventArgs.cs
- TextEditorSpelling.cs
- Registry.cs
- RelOps.cs
- Int32Rect.cs
- XmlSiteMapProvider.cs
- ScanQueryOperator.cs
- CornerRadius.cs
- AttachedAnnotationChangedEventArgs.cs
- ToolStripDropDownClosingEventArgs.cs
- InfoCardRSAPKCS1KeyExchangeDeformatter.cs
- SequenceDesignerAccessibleObject.cs
- BindableAttribute.cs
- SqlDataSourceFilteringEventArgs.cs
- _PooledStream.cs
- ColumnMapCopier.cs
- SubpageParaClient.cs
- AtomicFile.cs
- RawUIStateInputReport.cs
- SqlStatistics.cs
- ObjectMemberMapping.cs
- WebControlAdapter.cs
- FamilyMapCollection.cs
- PerspectiveCamera.cs
- SequenceDesigner.cs
- CharEntityEncoderFallback.cs
- XPSSignatureDefinition.cs
- PropertyKey.cs
- WorkerRequest.cs
- CounterCreationData.cs
- RuntimeHandles.cs
- DesignDataSource.cs
- InputScopeAttribute.cs
- TextEmbeddedObject.cs
- RevocationPoint.cs
- AspNetSynchronizationContext.cs
- ResourceBinder.cs
- DESCryptoServiceProvider.cs
- ServiceOperation.cs
- ColorComboBox.cs
- ResetableIterator.cs
- ProcessHostMapPath.cs
- TimeManager.cs
- SqlDataSourceAdvancedOptionsForm.cs
- ToolboxComponentsCreatedEventArgs.cs
- ScopelessEnumAttribute.cs
- CodeGeneratorOptions.cs
- Double.cs
- Domain.cs
- EventDescriptorCollection.cs
- DataRowChangeEvent.cs
- UrlUtility.cs
- WebPartZoneDesigner.cs
- SyndicationCategory.cs
- ProfileInfo.cs
- DataServiceHost.cs
- RightsController.cs
- ParallelQuery.cs
- ExpressionBindingCollection.cs
- SiteMapProvider.cs
- TreeViewHitTestInfo.cs
- DataSourceView.cs
- ContentControl.cs
- UnicodeEncoding.cs
- TaiwanCalendar.cs
- IDQuery.cs
- TimeoutHelper.cs
- UIElement.cs
- QuadraticBezierSegment.cs
- TypeUnloadedException.cs
- SqlClientFactory.cs