Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / xsp / System / Web / Configuration / SqlCacheDependencyDatabase.cs / 1 / SqlCacheDependencyDatabase.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.Globalization; using System.IO; using System.Text; using System.Diagnostics; using System.Security.Permissions; // class SqlCacheDependencySection [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class SqlCacheDependencyDatabase : ConfigurationElement { private static readonly ConfigurationElementProperty s_elemProperty = new ConfigurationElementProperty(new CallbackValidator(typeof(SqlCacheDependencyDatabase), Validate)); private static ConfigurationPropertyCollection _properties; private static readonly ConfigurationProperty _propName; private static readonly ConfigurationProperty _propConnectionStringName; private static readonly ConfigurationProperty _propPollTime; static SqlCacheDependencyDatabase() { // Property initialization _properties = new ConfigurationPropertyCollection(); _propName = new ConfigurationProperty("name", typeof(string), null, null, StdValidatorsAndConverters.NonEmptyStringValidator, ConfigurationPropertyOptions.IsRequired | ConfigurationPropertyOptions.IsKey); _propConnectionStringName = new ConfigurationProperty("connectionStringName", typeof(string), null, null, StdValidatorsAndConverters.NonEmptyStringValidator, ConfigurationPropertyOptions.IsRequired); _propPollTime = new ConfigurationProperty("pollTime", typeof(int), 60000, ConfigurationPropertyOptions.None); _properties.Add(_propName); _properties.Add(_propConnectionStringName); _properties.Add(_propPollTime); } private int defaultPollTime; // This may be set by the outer node to specify the default poll time (i.e. not specified on this node) public SqlCacheDependencyDatabase(string name, string connectionStringName, int pollTime) { Name = name; ConnectionStringName = connectionStringName; PollTime = pollTime; } public SqlCacheDependencyDatabase(string name, string connectionStringName) { Name = name; ConnectionStringName = connectionStringName; } internal SqlCacheDependencyDatabase() { } protected override ConfigurationPropertyCollection Properties { get { return _properties; } } protected override ConfigurationElementProperty ElementProperty { get { return s_elemProperty; } } private static void Validate(object value) { if (value == null) { throw new ArgumentNullException("sqlCacheDependencyDatabase"); } Debug.Assert(value is SqlCacheDependencyDatabase); SqlCacheDependencyDatabase elem = (SqlCacheDependencyDatabase)value; if (elem.PollTime != 0 && elem.PollTime < 500) { throw new ConfigurationErrorsException( SR.GetString(SR.Invalid_sql_cache_dep_polltime), elem.ElementInformation.Properties["pollTime"].Source, elem.ElementInformation.Properties["pollTime"].LineNumber); } } internal void CheckDefaultPollTime(int value) { // This method will be called by the outer node. // If the poolTime property is not specified in the node, then grab the one // from above. if (ElementInformation.Properties["pollTime"].ValueOrigin == PropertyValueOrigin.Default) { defaultPollTime = value; } } [ConfigurationProperty("name", IsRequired = true, IsKey = true)] [StringValidator(MinLength = 1)] public string Name { get { return (string)base[_propName]; } set { base[_propName] = value; } } [ConfigurationProperty("connectionStringName", IsRequired = true)] [StringValidator(MinLength = 1)] public string ConnectionStringName { get { return (string)base[_propConnectionStringName]; } set { base[_propConnectionStringName] = value; } } [ConfigurationProperty("pollTime", DefaultValue = 60000)] public int PollTime { get { if (ElementInformation.Properties["pollTime"].ValueOrigin == PropertyValueOrigin.Default) { return defaultPollTime; // Return the default value from outer node } else { return (int)base[_propPollTime]; } } set { base[_propPollTime] = value; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// 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.Globalization; using System.IO; using System.Text; using System.Diagnostics; using System.Security.Permissions; // class SqlCacheDependencySection [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class SqlCacheDependencyDatabase : ConfigurationElement { private static readonly ConfigurationElementProperty s_elemProperty = new ConfigurationElementProperty(new CallbackValidator(typeof(SqlCacheDependencyDatabase), Validate)); private static ConfigurationPropertyCollection _properties; private static readonly ConfigurationProperty _propName; private static readonly ConfigurationProperty _propConnectionStringName; private static readonly ConfigurationProperty _propPollTime; static SqlCacheDependencyDatabase() { // Property initialization _properties = new ConfigurationPropertyCollection(); _propName = new ConfigurationProperty("name", typeof(string), null, null, StdValidatorsAndConverters.NonEmptyStringValidator, ConfigurationPropertyOptions.IsRequired | ConfigurationPropertyOptions.IsKey); _propConnectionStringName = new ConfigurationProperty("connectionStringName", typeof(string), null, null, StdValidatorsAndConverters.NonEmptyStringValidator, ConfigurationPropertyOptions.IsRequired); _propPollTime = new ConfigurationProperty("pollTime", typeof(int), 60000, ConfigurationPropertyOptions.None); _properties.Add(_propName); _properties.Add(_propConnectionStringName); _properties.Add(_propPollTime); } private int defaultPollTime; // This may be set by the outer node to specify the default poll time (i.e. not specified on this node) public SqlCacheDependencyDatabase(string name, string connectionStringName, int pollTime) { Name = name; ConnectionStringName = connectionStringName; PollTime = pollTime; } public SqlCacheDependencyDatabase(string name, string connectionStringName) { Name = name; ConnectionStringName = connectionStringName; } internal SqlCacheDependencyDatabase() { } protected override ConfigurationPropertyCollection Properties { get { return _properties; } } protected override ConfigurationElementProperty ElementProperty { get { return s_elemProperty; } } private static void Validate(object value) { if (value == null) { throw new ArgumentNullException("sqlCacheDependencyDatabase"); } Debug.Assert(value is SqlCacheDependencyDatabase); SqlCacheDependencyDatabase elem = (SqlCacheDependencyDatabase)value; if (elem.PollTime != 0 && elem.PollTime < 500) { throw new ConfigurationErrorsException( SR.GetString(SR.Invalid_sql_cache_dep_polltime), elem.ElementInformation.Properties["pollTime"].Source, elem.ElementInformation.Properties["pollTime"].LineNumber); } } internal void CheckDefaultPollTime(int value) { // This method will be called by the outer node. // If the poolTime property is not specified in the node, then grab the one // from above. if (ElementInformation.Properties["pollTime"].ValueOrigin == PropertyValueOrigin.Default) { defaultPollTime = value; } } [ConfigurationProperty("name", IsRequired = true, IsKey = true)] [StringValidator(MinLength = 1)] public string Name { get { return (string)base[_propName]; } set { base[_propName] = value; } } [ConfigurationProperty("connectionStringName", IsRequired = true)] [StringValidator(MinLength = 1)] public string ConnectionStringName { get { return (string)base[_propConnectionStringName]; } set { base[_propConnectionStringName] = value; } } [ConfigurationProperty("pollTime", DefaultValue = 60000)] public int PollTime { get { if (ElementInformation.Properties["pollTime"].ValueOrigin == PropertyValueOrigin.Default) { return defaultPollTime; // Return the default value from outer node } else { return (int)base[_propPollTime]; } } set { base[_propPollTime] = value; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SchemaReference.cs
- Vector3DConverter.cs
- ModuleConfigurationInfo.cs
- HtmlHead.cs
- SplashScreenNativeMethods.cs
- TextProperties.cs
- BuildProvider.cs
- CompensationTokenData.cs
- PointValueSerializer.cs
- TokenBasedSetEnumerator.cs
- ReferentialConstraintRoleElement.cs
- CodeDefaultValueExpression.cs
- WebPartMinimizeVerb.cs
- PropertyTabChangedEvent.cs
- FixedFindEngine.cs
- BrushValueSerializer.cs
- SplitterPanel.cs
- HtmlShim.cs
- PasswordTextNavigator.cs
- NativeObjectSecurity.cs
- RequestCacheManager.cs
- ThemeInfoAttribute.cs
- InvalidDataException.cs
- DragDeltaEventArgs.cs
- XmlCharType.cs
- InputProcessorProfilesLoader.cs
- FlowDocument.cs
- Listener.cs
- StringUtil.cs
- EditingContext.cs
- DesignerVerb.cs
- MenuBindingsEditorForm.cs
- CachingHintValidation.cs
- TdsParserStateObject.cs
- COM2IVsPerPropertyBrowsingHandler.cs
- ToolStripDropTargetManager.cs
- AssemblyNameProxy.cs
- WebPartManagerInternals.cs
- EntityDataSourceContextDisposingEventArgs.cs
- OneToOneMappingSerializer.cs
- ValidationSummaryDesigner.cs
- TabPage.cs
- DataGridViewCheckBoxCell.cs
- ToolboxDataAttribute.cs
- InstanceCompleteException.cs
- DBAsyncResult.cs
- XmlSerializerNamespaces.cs
- GeometryHitTestParameters.cs
- FakeModelPropertyImpl.cs
- Int32CollectionValueSerializer.cs
- StructuralType.cs
- RoleManagerEventArgs.cs
- SoapObjectReader.cs
- ReadContentAsBinaryHelper.cs
- Size.cs
- PropertyEmitterBase.cs
- WindowsListViewItemCheckBox.cs
- SQLChars.cs
- ObjectDataSourceMethodEventArgs.cs
- EmbossBitmapEffect.cs
- DummyDataSource.cs
- WriteStateInfoBase.cs
- TraceContext.cs
- RoutedEventConverter.cs
- RegexParser.cs
- SoapReflectionImporter.cs
- SqlNode.cs
- AmbientLight.cs
- DataGridColumnHeaderItemAutomationPeer.cs
- Utils.cs
- datacache.cs
- ControlUtil.cs
- ThicknessAnimation.cs
- GridViewRowEventArgs.cs
- WizardPanelChangingEventArgs.cs
- SaveFileDialog.cs
- CorrelationTokenTypeConvertor.cs
- UInt16.cs
- ObjectTag.cs
- BufferedGraphicsManager.cs
- MenuScrollingVisibilityConverter.cs
- TCEAdapterGenerator.cs
- PersonalizationDictionary.cs
- ServiceDesigner.xaml.cs
- HandleTable.cs
- HTMLTextWriter.cs
- StringWriter.cs
- MimeParameterWriter.cs
- XamlToRtfWriter.cs
- MetadataExchangeBindings.cs
- OdbcStatementHandle.cs
- DataGridViewRowHeightInfoNeededEventArgs.cs
- WCFBuildProvider.cs
- securitycriticaldataClass.cs
- SqlNodeAnnotations.cs
- webeventbuffer.cs
- ToolStripRenderEventArgs.cs
- FtpRequestCacheValidator.cs
- Signature.cs
- HighlightComponent.cs