16

How can I return a model with a string propertie containing <li> elements and display it in view? If I just write @Model.Messages it shows all the string.. i need it in html format.

0

3 Answers 3

32

You can use the Content method with the Content-Type text/html to return the HTML directly, without the need of Html.Raw.

public ActionResult MyHtmlView() {
    return Content("<html><body>Ahoy.</body></html>", "text/html")
}

You can pass whatever Content-Type you want, such text/xml.

Sign up to request clarification or add additional context in comments.

Comments

8

Use Server.HtmlEncode() to send html to view and then use the Server.HtmlDecode() to get the html to display on the view.

Then you can use @Html.Raw(Server.HtmlDecode(str)).

Try this:

<div class='content'>     
   @Html.Raw(HttpUtility.HtmlDecode(Model.Message)); 
</div> 

Ref: Display encoded html with razor

Comments

7

You don't say which rendering engine you're using:

MVC3:
@Html.Raw(Model.Description)

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.