Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / WebControls / AdPostCacheSubstitution.cs / 2 / 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. //------------------------------------------------------------------------------ //// 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- dataprotectionpermission.cs
- FrameworkRichTextComposition.cs
- DataObjectFieldAttribute.cs
- FormViewInsertEventArgs.cs
- coordinatorscratchpad.cs
- ColorAnimationUsingKeyFrames.cs
- MatrixValueSerializer.cs
- SubstitutionResponseElement.cs
- UInt64Storage.cs
- VisualBrush.cs
- CodeCommentStatementCollection.cs
- SafeFileHandle.cs
- XPathBuilder.cs
- QueueAccessMode.cs
- FileStream.cs
- Vector3DAnimationUsingKeyFrames.cs
- WinEventHandler.cs
- EditCommandColumn.cs
- ResourceDefaultValueAttribute.cs
- GridViewUpdateEventArgs.cs
- WebPartConnectionCollection.cs
- SqlAliaser.cs
- XamlFilter.cs
- ObjectView.cs
- XPathConvert.cs
- FontDriver.cs
- FontFamilyIdentifier.cs
- CompositeFontFamily.cs
- CanonicalizationDriver.cs
- datacache.cs
- PermissionRequestEvidence.cs
- MDIWindowDialog.cs
- ThreadAttributes.cs
- SizeChangedEventArgs.cs
- ListViewHitTestInfo.cs
- EndGetFileNameFromUserRequest.cs
- LOSFormatter.cs
- SelectionHighlightInfo.cs
- PopupRootAutomationPeer.cs
- DESCryptoServiceProvider.cs
- DataSetMappper.cs
- SpecularMaterial.cs
- PauseStoryboard.cs
- SafeBitVector32.cs
- TypeDescriptionProviderAttribute.cs
- ScrollBar.cs
- XmlReaderDelegator.cs
- WebPartTransformerAttribute.cs
- FixedPageProcessor.cs
- DataSourceXmlTextReader.cs
- ToolStripButton.cs
- ServiceHostFactory.cs
- NGCSerializationManager.cs
- SiteOfOriginPart.cs
- CreateParams.cs
- TypeSystemProvider.cs
- KnownAssembliesSet.cs
- UriExt.cs
- ChannelBuilder.cs
- InstanceKeyCollisionException.cs
- Mutex.cs
- UrlMappingsModule.cs
- SqlReorderer.cs
- SafeArrayTypeMismatchException.cs
- FormattedText.cs
- ToolStripRendererSwitcher.cs
- ErrorFormatterPage.cs
- DesignerActionPanel.cs
- Pointer.cs
- ModifyActivitiesPropertyDescriptor.cs
- CatalogPartChrome.cs
- C14NUtil.cs
- SystemFonts.cs
- DataMisalignedException.cs
- EqualityArray.cs
- Exceptions.cs
- DefaultExpressionVisitor.cs
- Vector3DAnimation.cs
- CodeTypeMemberCollection.cs
- ProviderCommandInfoUtils.cs
- RequestCacheEntry.cs
- ZoneLinkButton.cs
- SimpleTypesSurrogate.cs
- EventNotify.cs
- RuntimeConfig.cs
- IssuedTokenParametersElement.cs
- PathFigureCollectionConverter.cs
- KeyedCollection.cs
- SystemIcons.cs
- XmlSchemaIdentityConstraint.cs
- ByteStack.cs
- RsaSecurityTokenAuthenticator.cs
- Rotation3D.cs
- metadatamappinghashervisitor.cs
- StatusInfoItem.cs
- SqlCommandBuilder.cs
- TextTreeFixupNode.cs
- Propagator.cs
- CreateDataSourceDialog.cs
- ReadOnlyTernaryTree.cs