Подтвердить что ты не робот

Как визуализировать HTML из Viewbag с помощью MVC3 Razor

Я пытаюсь передать элемент формы в представление MVC3 с помощью Viewbag и просто написать HTML на страницу...

В контроллере:

ViewBag.myData = "<input type=""hidden"" name=""example"" value=""examplevalue"">";

В представлении (я знаю, что я мог бы использовать хелпер для формы):

<form action="http://exampleurl/examplepage" method="post" id="example-form">
@ViewBag.myData
<input type="hidden" name="anotherexample" value="anotherexamplevalue" />
</form>

Это отображает myData как текст в HTML i.e.:

 &lt;type="hidden" name="example" value="examplevalue"&gt; 

Итак, мой вопрос в том, как заставить Razor сделать эквивалент старшего:

<%= myData %>

и не заменять < >

Спасибо Пол

4b9b3361

Ответ 1

Используйте @Html.Raw(ViewBag.Mydata).

Ответ 2

Это должно выполнить задание

 @Html.Raw((String)ViewBag.myData)

MSDN: этот метод обертывает разметку HTML, используя класс IHtmlString, который отображает unencoded HTML.

Вам нужно быть осторожным с принятием и отображением некодированного HTML.