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
- BamlWriter.cs
- FaultImportOptions.cs
- JapaneseCalendar.cs
- Size3DValueSerializer.cs
- OdbcDataReader.cs
- SystemFonts.cs
- ReflectTypeDescriptionProvider.cs
- DbConnectionClosed.cs
- SchemaAttDef.cs
- EventItfInfo.cs
- X509CertificateCollection.cs
- SqlXmlStorage.cs
- SplitterCancelEvent.cs
- GeneralTransformGroup.cs
- ReadOnlyAttribute.cs
- RelationalExpressions.cs
- Highlights.cs
- PrintPreviewDialog.cs
- DesignTimeHTMLTextWriter.cs
- WindowInteropHelper.cs
- QuotedStringFormatReader.cs
- DataTableClearEvent.cs
- RelationshipFixer.cs
- CommandValueSerializer.cs
- StructuredType.cs
- DateTimeConstantAttribute.cs
- BulletedListEventArgs.cs
- URIFormatException.cs
- HtmlWindow.cs
- ProfileEventArgs.cs
- SoapExtensionImporter.cs
- Logging.cs
- LinqTreeNodeEvaluator.cs
- ButtonFieldBase.cs
- OperatingSystem.cs
- XmlComplianceUtil.cs
- HttpWrapper.cs
- LogExtentCollection.cs
- DataSet.cs
- SafeNativeMethods.cs
- FixedFindEngine.cs
- InkCanvasSelectionAdorner.cs
- TextAutomationPeer.cs
- InstalledFontCollection.cs
- XmlAttributeCache.cs
- InvalidCommandTreeException.cs
- ISessionStateStore.cs
- _AcceptOverlappedAsyncResult.cs
- InputMethodStateTypeInfo.cs
- StylusPlugInCollection.cs
- CacheOutputQuery.cs
- ReadOnlyHierarchicalDataSourceView.cs
- InvocationExpression.cs
- Int32RectValueSerializer.cs
- InlineObject.cs
- Effect.cs
- PackagingUtilities.cs
- TraceHwndHost.cs
- OSEnvironmentHelper.cs
- PnrpPeerResolverElement.cs
- WinFormsSpinner.cs
- userdatakeys.cs
- HtmlUtf8RawTextWriter.cs
- LoginCancelEventArgs.cs
- RequestUriProcessor.cs
- View.cs
- StandardToolWindows.cs
- HttpDictionary.cs
- MarshalByRefObject.cs
- DataStreamFromComStream.cs
- Base64Encoding.cs
- EntityContainer.cs
- WindowClosedEventArgs.cs
- IgnoreSectionHandler.cs
- DynamicResourceExtension.cs
- SemanticKeyElement.cs
- BindingContext.cs
- ObfuscationAttribute.cs
- MdImport.cs
- TableAdapterManagerNameHandler.cs
- RoleService.cs
- TargetPerspective.cs
- StrongNameMembershipCondition.cs
- HtmlEmptyTagControlBuilder.cs
- HierarchicalDataTemplate.cs
- nulltextnavigator.cs
- InternalTypeHelper.cs
- HostingEnvironmentException.cs
- DataColumn.cs
- SynchronizedPool.cs
- NativeMethods.cs
- AuthorizationRuleCollection.cs
- SchemaExporter.cs
- UInt64.cs
- CodePageEncoding.cs
- MetadataFile.cs
- ScopelessEnumAttribute.cs
- TextTreeTextBlock.cs
- XsltOutput.cs
- HttpFileCollection.cs