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
- XmlILAnnotation.cs
- AssemblyNameProxy.cs
- DocumentPageHost.cs
- PhysicalOps.cs
- SignerInfo.cs
- HtmlHead.cs
- ActivityBuilderXamlWriter.cs
- StrongNameUtility.cs
- FixedSOMLineCollection.cs
- LambdaCompiler.ControlFlow.cs
- RootBuilder.cs
- ImpersonationOption.cs
- DescriptionAttribute.cs
- ColorBlend.cs
- FormViewInsertEventArgs.cs
- Soap.cs
- FormsAuthentication.cs
- odbcmetadatacollectionnames.cs
- DataSourceControl.cs
- Rotation3DAnimation.cs
- EntityException.cs
- ReferenceEqualityComparer.cs
- ListViewSortEventArgs.cs
- GlyphInfoList.cs
- OracleBoolean.cs
- DelegatingConfigHost.cs
- NativeMethods.cs
- WorkflowOperationAsyncResult.cs
- BasicCellRelation.cs
- SystemIcmpV6Statistics.cs
- FlowNode.cs
- Command.cs
- RSAProtectedConfigurationProvider.cs
- SerializationEventsCache.cs
- TableItemPattern.cs
- EpmSyndicationContentSerializer.cs
- TextureBrush.cs
- CompiledELinqQueryState.cs
- MessageLoggingFilterTraceRecord.cs
- ReachVisualSerializer.cs
- XpsFixedPageReaderWriter.cs
- CorrelationTokenInvalidatedHandler.cs
- ToolStripSeparatorRenderEventArgs.cs
- DeviceContexts.cs
- TextSpan.cs
- RadioButtonAutomationPeer.cs
- SystemUdpStatistics.cs
- DataGridViewCheckBoxCell.cs
- BinaryCommonClasses.cs
- MultiPageTextView.cs
- PeerMessageDispatcher.cs
- TypeResolver.cs
- ActivityDesigner.cs
- StyleXamlParser.cs
- ExtentKey.cs
- DictionaryItemsCollection.cs
- MethodBuilder.cs
- TraceSource.cs
- ComboBox.cs
- FlowDocumentFormatter.cs
- Themes.cs
- InfoCardBinaryReader.cs
- IProducerConsumerCollection.cs
- DataFormats.cs
- OLEDB_Util.cs
- GenericEnumerator.cs
- MachineKeySection.cs
- AccessText.cs
- SynchronizedDispatch.cs
- XmlDataSource.cs
- FileAuthorizationModule.cs
- SqlConnectionPoolProviderInfo.cs
- LoadGrammarCompletedEventArgs.cs
- BooleanSwitch.cs
- BookmarkUndoUnit.cs
- MapPathBasedVirtualPathProvider.cs
- LabelEditEvent.cs
- AmbientEnvironment.cs
- AutomationPropertyInfo.cs
- Expression.cs
- ComboBoxDesigner.cs
- BinaryFormatter.cs
- HttpRequestWrapper.cs
- DescendantQuery.cs
- DataObjectAttribute.cs
- RelationshipEntry.cs
- Sequence.cs
- MouseDevice.cs
- LocalizationComments.cs
- EntryIndex.cs
- GenericParameterDataContract.cs
- Parameter.cs
- DbProviderFactories.cs
- ResolvedKeyFrameEntry.cs
- AnonymousIdentificationModule.cs
- FixedSOMSemanticBox.cs
- EmbossBitmapEffect.cs
- WebBrowserHelper.cs
- MenuCommand.cs
- WeakRefEnumerator.cs