如何在Html.Raw中使用ViewBag?

时间:2014-06-06 14:09:56

标签: .net asp.net-mvc razor

我的代码如下:

@Html.Raw("<html lang='@ViewBag.locale' dir='@ViewBag.direction'>")

但是,这将直接解释为字符串@ ViewBag.locale而不是其值。

这样做的正确方法是什么,为什么我们要使用@ Html.Raw而不是实际的HTML标记

2 个答案:

答案 0 :(得分:4)

将其更改为:

@Html.Raw("<html lang=\"" + ViewBag.locale + "\" dir=\"" + ViewBag.direction + "\">")

虽然它认为这看起来更好:

<html lang="@Html.Raw(ViewBag.locale)" dir="@Html.Raw(ViewBag.direction)">

答案 1 :(得分:2)

我认为你没有必要在这里使用Html.Raw。也许如果你展示的不仅仅是一行代码,那么它可能有意义,但我对此表示怀疑。只需

即可享受更好的待遇
<html lang="@ViewBag.locale" dir="@ViewBag.direction">

否则,如果你弄清楚为什么需要使用Html.Raw,那么你可以随时使用jao的答案。