在Razor中查看如何将String类型转换为razor代码。我使用Razor视图引擎编写了以下代码:
@Html.Raw(String.Format("@ViewBag.User.Name{0}", @ViewBag.NameRol))
但是我得到了以下结论
@ViewBag.User.NameManager
我需要输出是
哈利
由于
答案 0 :(得分:0)
嗯,首先,我认为你可能会在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]