Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / xsp / System / Web / UI / WebControls / AdPostCacheSubstitution.cs / 1 / AdPostCacheSubstitution.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * The class is used internally to handle post-cache substitution mechanism in * AdRotator. * * Copyright (c) 2002 Microsoft Corporation */ namespace System.Web.UI.WebControls { using System.Globalization; using System.IO; using System.Web.Util; internal class AdPostCacheSubstitution { private AdRotator _adRotatorHelper; private AdPostCacheSubstitution() {} internal AdPostCacheSubstitution(AdRotator adRotator) { _adRotatorHelper = new AdRotator(); _adRotatorHelper.CopyFrom(adRotator); _adRotatorHelper.IsPostCacheAdHelper = true; _adRotatorHelper.Page = new Page(); } internal void RegisterPostCacheCallBack(HttpContext context, Page page, HtmlTextWriter writer) { // Assumption: called from AdRotator's Render phase HttpResponseSubstitutionCallback callback = new HttpResponseSubstitutionCallback(Render); context.Response.WriteSubstitution(callback); } internal string Render(HttpContext context) { // Debug.Assert(_adRotatorHelper != null && _adRotatorHelper.Page != null); // In PostCache Substitution, we use a string writer to return the markup. StringWriter stringWriter = new StringWriter(CultureInfo.CurrentCulture); HtmlTextWriter htmlWriter = _adRotatorHelper.Page.CreateHtmlTextWriter(stringWriter); Debug.Assert(htmlWriter != null); _adRotatorHelper.RenderControl(htmlWriter); // Dump the content out as needed for post-cache substitution. return stringWriter.ToString(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * The class is used internally to handle post-cache substitution mechanism in * AdRotator. * * Copyright (c) 2002 Microsoft Corporation */ namespace System.Web.UI.WebControls { using System.Globalization; using System.IO; using System.Web.Util; internal class AdPostCacheSubstitution { private AdRotator _adRotatorHelper; private AdPostCacheSubstitution() {} internal AdPostCacheSubstitution(AdRotator adRotator) { _adRotatorHelper = new AdRotator(); _adRotatorHelper.CopyFrom(adRotator); _adRotatorHelper.IsPostCacheAdHelper = true; _adRotatorHelper.Page = new Page(); } internal void RegisterPostCacheCallBack(HttpContext context, Page page, HtmlTextWriter writer) { // Assumption: called from AdRotator's Render phase HttpResponseSubstitutionCallback callback = new HttpResponseSubstitutionCallback(Render); context.Response.WriteSubstitution(callback); } internal string Render(HttpContext context) { // Debug.Assert(_adRotatorHelper != null && _adRotatorHelper.Page != null); // In PostCache Substitution, we use a string writer to return the markup. StringWriter stringWriter = new StringWriter(CultureInfo.CurrentCulture); HtmlTextWriter htmlWriter = _adRotatorHelper.Page.CreateHtmlTextWriter(stringWriter); Debug.Assert(htmlWriter != null); _adRotatorHelper.RenderControl(htmlWriter); // Dump the content out as needed for post-cache substitution. return stringWriter.ToString(); } } } // 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
- PreviewKeyDownEventArgs.cs
- XamlPointCollectionSerializer.cs
- SiteMembershipCondition.cs
- ConnectionPoolManager.cs
- RemoteWebConfigurationHost.cs
- ChangesetResponse.cs
- ServiceEndpointElement.cs
- DependentList.cs
- FixedSOMTableRow.cs
- UrlAuthorizationModule.cs
- ApplicationInfo.cs
- SqlPersonalizationProvider.cs
- ToolStripScrollButton.cs
- HttpCookiesSection.cs
- DbExpressionBuilder.cs
- ContentPlaceHolder.cs
- UInt64Converter.cs
- Positioning.cs
- DataGridViewRowsAddedEventArgs.cs
- ServiceOperationInvoker.cs
- IDictionary.cs
- Calendar.cs
- QueryInterceptorAttribute.cs
- RuleSetBrowserDialog.cs
- SafeRegistryHandle.cs
- PropertyEmitterBase.cs
- DataGridViewCellCancelEventArgs.cs
- Clause.cs
- ValidationSummary.cs
- EventRoute.cs
- ProtocolReflector.cs
- ViewGenResults.cs
- DataRecordInfo.cs
- ConcurrentQueue.cs
- EdmSchemaError.cs
- Set.cs
- DataGridViewCheckBoxColumn.cs
- ArcSegment.cs
- HtmlTernaryTree.cs
- BookmarkUndoUnit.cs
- XmlUtil.cs
- FocusManager.cs
- MobileTextWriter.cs
- DecoderFallbackWithFailureFlag.cs
- SelectionHighlightInfo.cs
- LicenseContext.cs
- HttpModuleActionCollection.cs
- CaseInsensitiveOrdinalStringComparer.cs
- ConstrainedDataObject.cs
- ScriptingRoleServiceSection.cs
- InfoCardRSAPKCS1SignatureFormatter.cs
- TextRunCache.cs
- DataTemplate.cs
- DefaultExpressionVisitor.cs
- AssemblySettingAttributes.cs
- Table.cs
- EntityViewGenerationAttribute.cs
- WeakReferenceKey.cs
- XmlTypeMapping.cs
- RuntimeEnvironment.cs
- PropertyGridEditorPart.cs
- SqlFactory.cs
- NativeMethods.cs
- IPGlobalProperties.cs
- FormatterConverter.cs
- StringOutput.cs
- ToolboxItem.cs
- CollectionViewSource.cs
- AnimationException.cs
- ActionNotSupportedException.cs
- DisposableCollectionWrapper.cs
- DataGridViewDataErrorEventArgs.cs
- autovalidator.cs
- DictationGrammar.cs
- ScrollChrome.cs
- MenuAdapter.cs
- WebHttpBindingElement.cs
- StatusBarItem.cs
- XmlName.cs
- XmlQueryOutput.cs
- Bezier.cs
- PixelFormatConverter.cs
- ThreadNeutralSemaphore.cs
- Hashtable.cs
- ServiceProviders.cs
- SerialReceived.cs
- GridViewCellAutomationPeer.cs
- JsonUriDataContract.cs
- ProcessStartInfo.cs
- ConfigurationException.cs
- PageBuildProvider.cs
- ContainerFilterService.cs
- SingleAnimation.cs
- GridViewUpdateEventArgs.cs
- TargetParameterCountException.cs
- ToolBarTray.cs
- WindowsListViewGroupHelper.cs
- HeaderUtility.cs
- BufferedWebEventProvider.cs
- WebPartRestoreVerb.cs