Jim,
The way you did it is no different for ASP.net. Remember that the end result is the same regardless of it being .net. Just like in ASP you would set the content type:
Response.ContentType = "application/vnd.ms-excel"
Do this in page load. You will probably want to purge the response buffer to clean it all out before you write your HTML table.
Here's a sample, and here's the code for it:
<%@ Page Language="
vb" AutoEventWireup="true" %>
<script runat="server">
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
If Request("showPlainHTML") Is Nothing Then
Response.ContentType = "application/vnd.ms-excel"
End If
End Sub
</script>
<table border="1">
<tr><td colspan="10"><h1>This is the header</h1></td></tr>
<tr><td colspan="10" align="center"><a href="webToExcel.aspx?showPlainHTML=true">Show as plain HTML</a></td></tr>
<tr><td colspan="10" align="center"><a href="webToExcel.aspx">Show in Excel</a></td></tr>
<tr><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td></tr>
<tr><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td></tr>
<tr><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td></tr>
<tr><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td></tr>
<tr><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td></tr>
<tr><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td></tr>
<tr><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td></tr>
<tr><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td></tr>
<tr><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td></tr>
<tr><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td></tr>
<tr><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td><td>data</td></tr>
<tr><td colspan="10"><h3>This is the footer</h3></td></tr>
</table>
Peter
------------------------------------------------------
Work smarter, not harder.