Displaying HTML Docs on a WebPage

  • Thread starter Thread starter GaryDean
  • Start date Start date
G

GaryDean

I have HTML formatted documents stored in a database. I want to display
them on a web page. However I see there is no "browser control" in asp (as
there is in windows forms). This sounds kind of stupid but is there a
control that I can load HTML into to display in a web page?
Thanks,
Gary
 
I have HTML formatted documents stored in a database.  I want to display
them on a web page.  However I see there is no "browser control" in asp (as
there is in windows forms).  This sounds kind of stupid but is there a
control that I can load HTML into to display in a web page?
Thanks,
Gary

I would use either a literal control, or a label. Just set the .Text
property to the HTML from the DB.
 
I would use either a literal control, or a label. Just set the .Text
property to the HTML from the DB.

The Literal control allows you to inject text, verbatim, into the response
stream. As such, any HTML you inject vai the Literal control would be
something the browser would render. What you can do to prevent the browser
from rendering the injected HTML is wrap the injected HTML in a <PRE> tag.
So use the Literal control, but be sure to make use of the <PRE> tag...
something like this:

e.g., myLiteral.Text = @"<PRE> html code to display as html code goes
here</PRE>";
 
Hello Gary,

I agree with Norm and Cramer. Apart from theirs, I'd also suggest checking
whether the HTML string from DB is escaped. Take the following code snippet
as an example:

1, this.Label1.Text = "<font color='red'>test</font>";
This will be rendered as "test" in red as we expected.

2, this.Label2.Text = "&lt;font color='red'&gt;test&lt;/font&gt;";
'<' can be encoded as &lt;, and '>' can be encoded as &gt; and be stored
into the DB. This piece of code will render the string as "<font
color='red'>test</font>". And I believe this is not what you expected to
see.

3, this.Label3.Text = System.Web.HttpUtility.HtmlDecode("&lt;font
color='red'&gt;test&lt;/font&gt;");
To resolve the problem in 2, we can use System.Web.HttpUtility.HtmlDecode
to decode the string, and generate the same effect as 1.

Please have a try and let us know if the suggestions help.

Regards,
Jialiang Ge ([email protected], remove 'online.')
Microsoft Online Community Support

Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
(e-mail address removed).

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.
 
Hello Gary,

I agree with Norm and Cramer. Apart from theirs, I'd also suggest checking
whether the HTML string from DB is escaped. Take the following code snippet
as an example:

1, this.Label1.Text = "<font color='red'>test</font>";
This will be rendered as "test" in red as we expected.

2, this.Label2.Text = "&lt;font color='red'&gt;test&lt;/font&gt;";
'<' can be encoded as &lt;, and '>' can be encoded as &gt; and be stored
into the DB. This piece of code will render the string as "<font
color='red'>test</font>". And I believe this is not what you expected to
see.

3, this.Label3.Text = System.Web.HttpUtility.HtmlDecode("&lt;font
color='red'&gt;test&lt;/font&gt;");
To resolve the problem in 2, we can use System.Web.HttpUtility.HtmlDecode
to decode the string, and generate the same effect as 1.

Please have a try and let us know if the suggestions help.

Regards,
Jialiang Ge ([email protected], remove 'online.')
Microsoft Online Community Support

Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
(e-mail address removed).

==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.
 
Jialiang,
The literal control worked. I stored the html as byte[] and then retrieved
it back and it was not escaped so things are fine.
Thanks for your help.
Gary
 
in html, the <iframe> is the same as the browser control. with IE, its an
actual ie instance hosted on the page.


-- bruce (sqlwork.com)
 
Back
Top