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
- Documentation.cs
- PackWebResponse.cs
- SmiXetterAccessMap.cs
- WSFederationHttpSecurity.cs
- DataColumnMapping.cs
- _OverlappedAsyncResult.cs
- PermissionRequestEvidence.cs
- EastAsianLunisolarCalendar.cs
- NameNode.cs
- InputChannelAcceptor.cs
- XhtmlConformanceSection.cs
- AppDomainAttributes.cs
- FamilyTypefaceCollection.cs
- ListenerPerfCounters.cs
- DataColumnPropertyDescriptor.cs
- WorkflowWebService.cs
- UITypeEditor.cs
- MatchingStyle.cs
- Rectangle.cs
- XamlReaderHelper.cs
- QueryOperationResponseOfT.cs
- PropertyAccessVisitor.cs
- X509CertificateInitiatorClientCredential.cs
- PinnedBufferMemoryStream.cs
- Material.cs
- TextParagraphCache.cs
- OverflowException.cs
- ImplicitInputBrush.cs
- SponsorHelper.cs
- Comparer.cs
- SmtpTransport.cs
- PriorityBinding.cs
- lengthconverter.cs
- XmlSchemaInclude.cs
- TextRangeBase.cs
- _ConnectOverlappedAsyncResult.cs
- MethodRental.cs
- Command.cs
- LocatorPart.cs
- MsmqInputSessionChannelListener.cs
- SQLDateTime.cs
- ListChangedEventArgs.cs
- PageCatalogPart.cs
- WindowsStreamSecurityElement.cs
- TraceContextRecord.cs
- NativeMethods.cs
- OutputCacheSection.cs
- Highlights.cs
- InternalUserCancelledException.cs
- CodeIterationStatement.cs
- NonSerializedAttribute.cs
- EditorPartChrome.cs
- LinqDataView.cs
- TreeNodeBindingDepthConverter.cs
- PageCache.cs
- GuidTagList.cs
- ReachNamespaceInfo.cs
- CompilationUtil.cs
- SubpageParaClient.cs
- ByteStreamGeometryContext.cs
- XmlReflectionMember.cs
- VersionedStreamOwner.cs
- SubMenuStyle.cs
- TimeSpanMinutesConverter.cs
- NativeMethods.cs
- GenericEnumerator.cs
- TemplateBuilder.cs
- XsltLoader.cs
- CustomValidator.cs
- InputDevice.cs
- xsdvalidator.cs
- MetadataWorkspace.cs
- PagesSection.cs
- Int32.cs
- Constraint.cs
- ObjectListCommand.cs
- DropShadowEffect.cs
- InvalidDataContractException.cs
- FileDataSourceCache.cs
- HyperLinkStyle.cs
- XsltException.cs
- SessionStateSection.cs
- TextServicesDisplayAttribute.cs
- ObjectDisposedException.cs
- ConnectionConsumerAttribute.cs
- SimpleType.cs
- SystemException.cs
- RegionData.cs
- InkCanvas.cs
- EventDescriptorCollection.cs
- SessionEndingCancelEventArgs.cs
- EnumMember.cs
- KeyValuePairs.cs
- SmiContext.cs
- RoleGroupCollection.cs
- HtmlInputButton.cs
- KeyboardEventArgs.cs
- FastEncoderWindow.cs
- DataGridViewRowHeaderCell.cs
- ThreadAbortException.cs