Gmail Calendar Documents Reader Web more »
Recently Visited Groups | Help | Sign in
Google Groups Home
Message from discussion Capturing the HTML from an ASP.NET 2.0 page
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Ken Cox - Microsoft MVP  
View profile  
 More options Feb 12 2006, 2:54 am
Newsgroups: microsoft.public.dotnet.framework.aspnet
From: "Ken Cox - Microsoft MVP" <BANSPAMkj...@hotmail.com>
Date: Sat, 11 Feb 2006 23:54:49 -0800
Local: Sun, Feb 12 2006 2:54 am
Subject: Capturing the HTML from an ASP.NET 2.0 page
I'm trying to find a way to program in ASP.NET 2.0 but capture the HTML
output. I found the following routine in ASP.NET 2.0 Cookbook from O'Reilly.
It doesn't work if I include a server-side dropdownlist control on the page.
The error is RegisterForEventValidation can only be called during Render();

Any ideas?

Ken
Microsoft MVP [ASP.NET]

<%@ Page Language="VB" %>

<script runat="server">
    Protected Sub Page_Load _
    (ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles Me.Load
        Const OUTPUT_FILENAME As String = "renderedpage.html"
        Dim renderedOutput As StringBuilder = Nothing
        Dim strWriter As IO.StringWriter = Nothing
        Dim tWriter As HtmlTextWriter = Nothing
        Dim outputStream As IO.FileStream = Nothing
        Dim sWriter As IO.StreamWriter = Nothing
        Dim filename As String
        Dim nextPage As String

        Try
            'create a HtmlTextWriter to use for rendering the page
            renderedOutput = New StringBuilder
            strWriter = New IO.StringWriter(renderedOutput)
            tWriter = New HtmlTextWriter(strWriter)

            'render the page output
            Page.RenderControl(tWriter)

            'save the rendered output to a file
            filename = Server.MapPath(".") & "\" & OUTPUT_FILENAME
            outputStream = New IO.FileStream(filename, _
                                          IO.FileMode.Create)
            sWriter = New IO.StreamWriter(outputStream)
            sWriter.Write(renderedOutput.ToString())
            sWriter.Flush()

            'redirect to another page
            'NOTE: Continuing with the display of this page will result in
the
            '      page being rendered a second time which will cause an
exception
            '      to be thrown
            nextPage = "DisplayMessage.aspx?" & _
                       "PageHeader=Information" & "&" & _
                       "Message1=HTML Output Saved To " & OUTPUT_FILENAME
            Response.Redirect(nextPage)

        Finally
            'clean up
            If (Not IsNothing(outputStream)) Then
                outputStream.Close()
            End If

            If (Not IsNothing(tWriter)) Then
                tWriter.Close()
            End If

            If (Not IsNothing(strWriter)) Then
                strWriter.Close()
            End If
        End Try
    End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Capture Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:dropdownlist id="DropDownList1" runat="server">
            <asp:listitem>red</asp:listitem>
            <asp:listitem>blue</asp:listitem>
            <asp:listitem>green</asp:listitem>
        </asp:dropdownlist></div>
    </form>
</body>
</html>


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.

Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy
©2009 Google