Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / ControlCachePolicy.cs / 1305376 / ControlCachePolicy.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI { using System; using System.IO; using System.Text; using System.Collections; using System.Collections.Specialized; using System.ComponentModel; using System.ComponentModel.Design; using System.Globalization; using System.Web; using System.Web.Util; using System.Web.UI.WebControls; using System.Web.Caching; using System.Security.Permissions; public sealed class ControlCachePolicy { private static ControlCachePolicy _cachePolicyStub = new ControlCachePolicy(); private BasePartialCachingControl _pcc; internal ControlCachePolicy() { } internal ControlCachePolicy(BasePartialCachingControl pcc) { _pcc = pcc; } internal static ControlCachePolicy GetCachePolicyStub() { // Return a stub, which returns SupportsCaching==false and throws on everything else. return _cachePolicyStub; } // Check whether it is valid to access properties on this object private void CheckValidCallingContext() { // If it's not being cached, the CachePolicy can't be used if (_pcc == null) { throw new HttpException( SR.GetString(SR.UC_not_cached)); } // Make sure it's not being used too late if (_pcc.ControlState >= ControlState.PreRendered) { throw new HttpException( SR.GetString(SR.UCCachePolicy_unavailable)); } } public bool SupportsCaching { get { // Caching is supported if we have a PartialCachingControl return (_pcc != null); } } public bool Cached { get { CheckValidCallingContext(); return !_pcc._cachingDisabled; } set { CheckValidCallingContext(); _pcc._cachingDisabled = !value; } } public TimeSpan Duration { get { CheckValidCallingContext(); return _pcc.Duration; } set { CheckValidCallingContext(); _pcc.Duration = value; } } public HttpCacheVaryByParams VaryByParams { get { CheckValidCallingContext(); return _pcc.VaryByParams; } } public string VaryByControl { get { CheckValidCallingContext(); return _pcc.VaryByControl; } set { CheckValidCallingContext(); _pcc.VaryByControl = value; } } public CacheDependency Dependency { get { CheckValidCallingContext(); return _pcc.Dependency; } set { CheckValidCallingContext(); _pcc.Dependency = value; } } public void SetVaryByCustom(string varyByCustom) { CheckValidCallingContext(); _pcc._varyByCustom = varyByCustom; } public void SetSlidingExpiration(bool useSlidingExpiration) { CheckValidCallingContext(); _pcc._useSlidingExpiration = useSlidingExpiration; } public void SetExpires(DateTime expirationTime) { CheckValidCallingContext(); _pcc._utcExpirationTime = DateTimeUtil.ConvertToUniversalTime(expirationTime); } public String ProviderName { get { CheckValidCallingContext(); if (_pcc._provider == null) { return OutputCache.ASPNET_INTERNAL_PROVIDER_NAME; } else { return _pcc._provider; } } set { CheckValidCallingContext(); if (value == OutputCache.ASPNET_INTERNAL_PROVIDER_NAME) { value = null; } OutputCache.ThrowIfProviderNotFound(value); _pcc._provider = 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
- HtmlWindowCollection.cs
- CqlParserHelpers.cs
- Point3DCollection.cs
- DataGridViewCellConverter.cs
- TraceContext.cs
- TransactionsSectionGroup.cs
- SendMailErrorEventArgs.cs
- TransformerInfo.cs
- DesignObjectWrapper.cs
- Win32Exception.cs
- DesignerLoader.cs
- DiagnosticStrings.cs
- BufferManager.cs
- HitTestParameters.cs
- documentsequencetextview.cs
- HtmlLink.cs
- StylusButtonEventArgs.cs
- EmptyWithCancelationCheckWorkItem.cs
- SubclassTypeValidatorAttribute.cs
- X509WindowsSecurityToken.cs
- SafeHandles.cs
- NavigationPropertyEmitter.cs
- ObjectIDGenerator.cs
- DBCommandBuilder.cs
- WSTrust.cs
- ListManagerBindingsCollection.cs
- SimpleTextLine.cs
- UidManager.cs
- AlternationConverter.cs
- HttpDebugHandler.cs
- SrgsDocumentParser.cs
- InheritanceRules.cs
- TransformerInfoCollection.cs
- ReturnEventArgs.cs
- ExceptionUtil.cs
- DataSvcMapFile.cs
- RawStylusSystemGestureInputReport.cs
- HierarchicalDataSourceControl.cs
- CompressionTransform.cs
- RunWorkerCompletedEventArgs.cs
- WebBrowserEvent.cs
- RequestTimeoutManager.cs
- InlineCategoriesDocument.cs
- ComplexTypeEmitter.cs
- WorkerRequest.cs
- CharEntityEncoderFallback.cs
- DataGridToolTip.cs
- TextRange.cs
- DataSourceControl.cs
- DataColumnPropertyDescriptor.cs
- Propagator.JoinPropagator.cs
- Pens.cs
- AspNetSynchronizationContext.cs
- DynamicUpdateCommand.cs
- Stack.cs
- MultiPartWriter.cs
- StorageEntityContainerMapping.cs
- ForEachDesigner.xaml.cs
- HMACMD5.cs
- GZipDecoder.cs
- CqlBlock.cs
- LateBoundBitmapDecoder.cs
- UniqueConstraint.cs
- ServicePoint.cs
- UInt64Converter.cs
- PassportIdentity.cs
- EventMappingSettings.cs
- OutOfProcStateClientManager.cs
- ManipulationVelocities.cs
- ToolStripDropDownItem.cs
- SecureEnvironment.cs
- MexHttpsBindingCollectionElement.cs
- PersianCalendar.cs
- IdentifierCollection.cs
- WindowsRebar.cs
- NativeMethods.cs
- TypeReference.cs
- XmlBoundElement.cs
- RtfToken.cs
- TraceUtility.cs
- SqlClientFactory.cs
- XmlChildEnumerator.cs
- XmlParserContext.cs
- ProviderManager.cs
- EqualityComparer.cs
- UiaCoreTypesApi.cs
- MatrixStack.cs
- ObservableCollection.cs
- PropertyGroupDescription.cs
- DirectionalLight.cs
- TraceInternal.cs
- DBParameter.cs
- LeaseManager.cs
- Form.cs
- CompilerInfo.cs
- EndSelectCardRequest.cs
- DragDeltaEventArgs.cs
- DBCommandBuilder.cs
- FormsAuthenticationTicket.cs
- DeferrableContent.cs