Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / xsp / System / Web / UI / SqlDataSourceCache.cs / 1 / SqlDataSourceCache.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI {
using System.Collections;
using System.ComponentModel;
using System.Web.Caching;
internal sealed class SqlDataSourceCache : DataSourceCache {
internal const string Sql9CacheDependencyDirective = "CommandNotification";
///
/// A semi-colon delimited string indicating which databases to use for the dependency in the format "database1:table1;database2:table2".
///
public string SqlCacheDependency {
get {
object o = ViewState["SqlCacheDependency"];
if (o != null)
return (string)o;
return String.Empty;
}
set {
ViewState["SqlCacheDependency"] = value;
}
}
#if !FEATURE_PAL // FEATURE_PAL does not fully enable SQL dependencies
///
/// Saves data to the ASP.NET cache using the specified key.
///
protected override void SaveDataToCacheInternal(string key, object data, CacheDependency dependency) {
string sqlCacheDependency = SqlCacheDependency;
// Here we only create cache dependencies for SQL Server 2000 and
// earlier that use a polling based mechanism. For SQL Server 2005
// and after, the data source itself creates the SqlCacheDependency
// and passes it in as a parameter.
if (sqlCacheDependency.Length > 0 && !String.Equals(sqlCacheDependency, Sql9CacheDependencyDirective, StringComparison.OrdinalIgnoreCase)) {
// Call internal helper method to parse the dependency list
CacheDependency sqlDependency = System.Web.Caching.SqlCacheDependency.CreateOutputCacheDependency(sqlCacheDependency);
if (dependency != null) {
// There was another dependency passed in, aggregate them
AggregateCacheDependency aggregateDependency = new AggregateCacheDependency();
aggregateDependency.Add(sqlDependency, dependency);
dependency = aggregateDependency;
}
else {
// No other dependencies, just the SQL one
dependency = sqlDependency;
}
}
base.SaveDataToCacheInternal(key, data, dependency);
}
#endif // !FEATURE_PAL
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI {
using System.Collections;
using System.ComponentModel;
using System.Web.Caching;
internal sealed class SqlDataSourceCache : DataSourceCache {
internal const string Sql9CacheDependencyDirective = "CommandNotification";
///
/// A semi-colon delimited string indicating which databases to use for the dependency in the format "database1:table1;database2:table2".
///
public string SqlCacheDependency {
get {
object o = ViewState["SqlCacheDependency"];
if (o != null)
return (string)o;
return String.Empty;
}
set {
ViewState["SqlCacheDependency"] = value;
}
}
#if !FEATURE_PAL // FEATURE_PAL does not fully enable SQL dependencies
///
/// Saves data to the ASP.NET cache using the specified key.
///
protected override void SaveDataToCacheInternal(string key, object data, CacheDependency dependency) {
string sqlCacheDependency = SqlCacheDependency;
// Here we only create cache dependencies for SQL Server 2000 and
// earlier that use a polling based mechanism. For SQL Server 2005
// and after, the data source itself creates the SqlCacheDependency
// and passes it in as a parameter.
if (sqlCacheDependency.Length > 0 && !String.Equals(sqlCacheDependency, Sql9CacheDependencyDirective, StringComparison.OrdinalIgnoreCase)) {
// Call internal helper method to parse the dependency list
CacheDependency sqlDependency = System.Web.Caching.SqlCacheDependency.CreateOutputCacheDependency(sqlCacheDependency);
if (dependency != null) {
// There was another dependency passed in, aggregate them
AggregateCacheDependency aggregateDependency = new AggregateCacheDependency();
aggregateDependency.Add(sqlDependency, dependency);
dependency = aggregateDependency;
}
else {
// No other dependencies, just the SQL one
dependency = sqlDependency;
}
}
base.SaveDataToCacheInternal(key, data, dependency);
}
#endif // !FEATURE_PAL
}
}
// 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
- ProfileService.cs
- HttpResponseMessageProperty.cs
- MemoryMappedView.cs
- autovalidator.cs
- ReadOnlyMetadataCollection.cs
- ApplicationActivator.cs
- ToolTipAutomationPeer.cs
- LockCookie.cs
- ContentAlignmentEditor.cs
- SpeechRecognitionEngine.cs
- SpanIndex.cs
- OleDbMetaDataFactory.cs
- VisualBasic.cs
- FunctionNode.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- SourceFileInfo.cs
- BookmarkScopeManager.cs
- AbstractExpressions.cs
- ParserOptions.cs
- HttpModuleActionCollection.cs
- RetrieveVirtualItemEventArgs.cs
- XmlSerializerOperationFormatter.cs
- HintTextMaxWidthConverter.cs
- BulletedList.cs
- XPathNavigatorReader.cs
- SqlFunctionAttribute.cs
- XmlSchemaSequence.cs
- D3DImage.cs
- SplitContainer.cs
- QilValidationVisitor.cs
- SqlConnectionHelper.cs
- ProfileModule.cs
- XmlSchemaSimpleContentRestriction.cs
- ProgressBarRenderer.cs
- CompModSwitches.cs
- GeneratedView.cs
- BamlLocalizableResource.cs
- ImageProxy.cs
- validation.cs
- SemanticValue.cs
- SoapAttributes.cs
- LambdaCompiler.Unary.cs
- PageHandlerFactory.cs
- TreePrinter.cs
- SqlProviderServices.cs
- CodeDOMProvider.cs
- DataGridViewComboBoxCell.cs
- diagnosticsswitches.cs
- QuaternionAnimation.cs
- XpsInterleavingPolicy.cs
- ArgIterator.cs
- parserscommon.cs
- Blend.cs
- MsmqDiagnostics.cs
- RoutedEventConverter.cs
- Html32TextWriter.cs
- RadioButtonStandardAdapter.cs
- LinearKeyFrames.cs
- FlowDocumentView.cs
- ConnectionStringsExpressionBuilder.cs
- ISO2022Encoding.cs
- CircleHotSpot.cs
- AccessibleObject.cs
- ToolStripGripRenderEventArgs.cs
- ClientApiGenerator.cs
- Int32RectValueSerializer.cs
- Cursor.cs
- FamilyCollection.cs
- ViewPort3D.cs
- XsltLoader.cs
- DelayedRegex.cs
- SqlRowUpdatingEvent.cs
- DesignConnectionCollection.cs
- TreeNodeBindingCollection.cs
- CryptoConfig.cs
- ExtendedProperty.cs
- CodeIndexerExpression.cs
- ComponentEditorForm.cs
- DataControlLinkButton.cs
- ThemeableAttribute.cs
- InputEventArgs.cs
- ReceiveActivityDesigner.cs
- ProjectionCamera.cs
- Help.cs
- SystemFonts.cs
- ResXBuildProvider.cs
- Track.cs
- _IPv4Address.cs
- Char.cs
- TabControlToolboxItem.cs
- PngBitmapEncoder.cs
- SemanticKeyElement.cs
- XmlWhitespace.cs
- PixelFormat.cs
- EdmItemCollection.cs
- CacheDependency.cs
- FixedTextSelectionProcessor.cs
- XmlDigitalSignatureProcessor.cs
- DropDownList.cs
- ProcessHostFactoryHelper.cs