Verwenden von TagBuilder zum Rendern von HTML auf der Seite

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Verwenden von TagBuilder zum Rendern von HTML auf der Seite

by Guest » 05 Jan 2025, 07:00

Ich verwende TagBuilder, um HTML zurückzugeben. Was passiert, ist, dass der HTML-Code als Text gerendert wird. Dies ist Teil des Codes:

Code: Select all

private string RenderAlert()
{
//
var wrapper = new TagBuilder("div");
//merge attributes
wrapper.MergeAttributes(htmlAttributes != null ? HtmlHelper.AnonymousObjectToHtmlAttributes(htmlAttributes) : null);

if (alertStyle != AlertStyle.Default)
wrapper.AddCssClass(alertStyle.ToString().ToLower());
wrapper.AddCssClass("alert-box");

//build html
wrapper.InnerHtml.AppendHtml(text);

//Add close button
if (!hideCloseButton)
wrapper.InnerHtml.AppendHtml(RenderCloseButton());

var stringWriter = new System.IO.StringWriter();
wrapper.WriteTo(stringWriter, HtmlEncoder.Default);
var tagBuilderIsFinallyAStringNow = stringWriter.ToString();

return tagBuilderIsFinallyAStringNow;
}

private static string RenderCloseButton()
{
//x
var closeButton = new TagBuilder("a");
closeButton.AddCssClass("close");
closeButton.Attributes.Add("href", "");
closeButton.InnerHtml.AppendHtml("x");

var stringWriter = new System.IO.StringWriter();
closeButton.WriteTo(stringWriter, HtmlEncoder.Default);
var tagBuilderIsFinallyAStringNow = stringWriter.ToString();

return tagBuilderIsFinallyAStringNow;
}

public override string ToString()
{
return RenderAlert();

Top