在 Razor 视图中,我如何将字符串类型转换为 razor 代码。我使用 Razor 视图引擎编写了以下代码:
@Html.Raw(String.Format("@ViewBag.User.Name{0}", @ViewBag.NameRol))
但我得到以下输出
@ViewBag.User.NameManager
我需要的输出是
哈利
谢谢
在 Razor 视图中,我如何将字符串类型转换为 razor 代码。我使用 Razor 视图引擎编写了以下代码:
@Html.Raw(String.Format("@ViewBag.User.Name{0}", @ViewBag.NameRol))
但我得到以下输出
@ViewBag.User.NameManager
我需要的输出是
哈利
谢谢
好吧,首先,我认为您可能在 ViewBag 中而不是在它所属的视图模型中填充了太多东西。但既然这就是你所追求的,我认为你不能让 Razor 评估它本身作为原始发出的东西。
但是,您可以在 ViewBag 中使用 Dictionary。像这样的东西
// controller action:
var users = new Dictionary<string, string>();
users.Add("Manager", "Harry");
users.Add("Employee", "John");
ViewBag.Role = "Manager";
ViewBag.Users = users;
// view:
@ViewBag.Users[ViewBag.Role]