Include contents of an html page in an aspx page

4.22 (18 votes)

If you are creating a new ASP.NET application, but have a huge collection of existing content in html files, one option is to move all the content into a database and generate pages dynamically. However, migration to a database can be a time-consuming task depending on the volume of content. So wouldn't it be easier to somehow import the relevant parts of the existing html pages into your aspx page?

The use of System.IO and regular expressions makes this a very easy task. Place a <asp:Literal> control (ID="htmlbody") on your page, and then use the following code to strip out everything up to and including the <body> tag (regardless of whether the tag contains additional attributes), and everything from the closing </body> tag onwards:

 StreamReader sr;
 string html;
 sr = File.OpenText("<path_to_file.htm>");
 html = sr.ReadToEnd();
 sr.Close();

 Regex start = new Regex(@"[\s\S]*<body[^<]*>", RegexOptions.IgnoreCase);
 html = start.Replace(html,"");
 Regex end = new Regex(@"</body[\s\S]*", RegexOptions.IgnoreCase);
 html = end.Replace(html, "");
 htmlbody.Text = html;

You might also like...

Date Posted:
Last Updated:
Posted by:
Total Views to date: 68144

5 Comments

- pranav

what does below code means?

"[\s\S]*<body[^<]*>"

- Mike

@pranav

It's part of a regular expression pattern. It attempts to locate the body tag in the html, and allows for cases where there might be inline styling or javascript onload function calls. Or indeed anything else.

- Jason

I have a aspx page where I have it inside of a master page. I want to add javascript but I know you can only do this in a html page. I am just wanting to know is ther a way to add javascript to a aspx page.

- khalid

You have a style class created in MyStyles.css style sheet document. What do you need to include in the HTML code on .aspx page to make sure that you can use the styles from MyStyles on that page?

- Mike

@Khalid,

You can use a link element to reference the style sheet in the aspx file.

Recent Comments

Satyabrata Mohapatra 23/07/2017 16:43
In response to Razor Pages - The Elevator Pitch
@Dale Severin You can continue to build apps using asp.net web pages....

Satyabrata Mohapatra 23/07/2017 16:40
In response to Sending Email in Razor Pages
Thanks for sharing...learned a lot...

Gfw 22/07/2017 11:53
In response to Sending Email in Razor Pages
Question... Does System.Net.Mail support SSL?...

Dale Severin 20/07/2017 03:38
In response to Razor Pages - The Elevator Pitch
I work with razor web pages extensively. I appreciate the rapid development it permits me to I am as...

Obinna Okafor 14/07/2017 01:19
In response to Routing in Razor Pages
Thank you, Mike. Good post....

Satyabrata Mohapatra 11/07/2017 16:02
In response to Routing in Razor Pages
Very powerful routing system!!...

Cyrus 05/07/2017 03:41
In response to Razor Pages - Getting Started With The Preview
How can I trim packages and services as much as possible to use just razor pages? I don’t want to to...

Harris Boyce 04/07/2017 04:17
In response to Razor Pages - The Elevator Pitch
As a developer of a couple "trivial" web pages applications used by non-profits that wouldn't have I...

Cyrus 28/06/2017 20:25
In response to Razor Pages - Getting Started With The Preview
.net core 2.0 preview 2: <a...

ojorma 17/06/2017 09:24
In response to Razor Pages - The Elevator Pitch
Finally I can say goodbye to webforms...