Code:
/ FX-1434 / FX-1434 / 1.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
- QuaternionRotation3D.cs
- ImageField.cs
- SspiWrapper.cs
- Slider.cs
- LinqDataSourceContextData.cs
- TextProviderWrapper.cs
- EncoderParameter.cs
- Scene3D.cs
- ContextStaticAttribute.cs
- NavigationWindowAutomationPeer.cs
- DrawingContextFlattener.cs
- DependencyPropertyChangedEventArgs.cs
- GPPOINT.cs
- BackgroundFormatInfo.cs
- ColorTranslator.cs
- XmlAtomicValue.cs
- StringFormat.cs
- UriParserTemplates.cs
- DynamicQueryableWrapper.cs
- EarlyBoundInfo.cs
- NCryptSafeHandles.cs
- DispatcherFrame.cs
- HttpListenerContext.cs
- Graph.cs
- ColumnMapCopier.cs
- HttpInputStream.cs
- ToolBarPanel.cs
- mediaeventshelper.cs
- Span.cs
- WebEventTraceProvider.cs
- FontSizeConverter.cs
- EntityDataSourceQueryBuilder.cs
- TdsParserSessionPool.cs
- SettingsPropertyWrongTypeException.cs
- DataGridViewTextBoxEditingControl.cs
- UnionExpr.cs
- XDRSchema.cs
- SqlWebEventProvider.cs
- assertwrapper.cs
- DataSourceXmlElementAttribute.cs
- DispatcherOperation.cs
- BlockUIContainer.cs
- TabItemWrapperAutomationPeer.cs
- NavigationWindow.cs
- HGlobalSafeHandle.cs
- FileUpload.cs
- HtmlShim.cs
- ConfigurationManagerHelper.cs
- Connector.cs
- BrowserCapabilitiesFactoryBase.cs
- XmlReflectionMember.cs
- ProfileBuildProvider.cs
- GradientSpreadMethodValidation.cs
- DuplexChannelBinder.cs
- AssemblyCache.cs
- TransportSecurityHelpers.cs
- ALinqExpressionVisitor.cs
- Matrix3D.cs
- SimpleHandlerFactory.cs
- SchemaImporterExtensionsSection.cs
- ToolboxItemLoader.cs
- XNodeSchemaApplier.cs
- SqlLiftIndependentRowExpressions.cs
- OperatingSystem.cs
- RelationshipManager.cs
- XmlSerializerNamespaces.cs
- BinaryObjectWriter.cs
- TreeNodeMouseHoverEvent.cs
- CategoryAttribute.cs
- AppDomainUnloadedException.cs
- NativeCppClassAttribute.cs
- DataGridColumnCollectionEditor.cs
- _SSPIWrapper.cs
- SmtpSection.cs
- cache.cs
- WebControl.cs
- FontStretch.cs
- TypeDependencyAttribute.cs
- GuidTagList.cs
- Parallel.cs
- StylusButtonCollection.cs
- SortDescription.cs
- DataGridViewSelectedCellsAccessibleObject.cs
- ListViewDeleteEventArgs.cs
- MdiWindowListItemConverter.cs
- MaskedTextBox.cs
- SqlRowUpdatedEvent.cs
- DebugView.cs
- ParenExpr.cs
- XmlUtil.cs
- WeakKeyDictionary.cs
- FixedSOMElement.cs
- TraceProvider.cs
- Lookup.cs
- SqlDataSourceCache.cs
- ContentFilePart.cs
- PerformanceCounters.cs
- ManagementEventArgs.cs
- IntPtr.cs
- CodeNamespaceImportCollection.cs