我正在尝试使用以下代码在Razor中打印字符串:
@Html.Raw("Welcome @(ViewBag.Content.User.Name)!")
不幸的是,这个字符串的输出:"欢迎@(ViewBag.Content.User.Name)!"。但是当我以这种方式打印时:
@Html.Raw("Welcome " + @(ViewBag.Content.User.Name) + "!")
字符串的输出是:"欢迎Yanick!",正是我想要的但我不想以这种方式打印它。是否有可能运行字符串内的Razor代码(参见第一个例子)?我也尝试了Html.Encode(),但这并没有...
答案 0 :(得分:0)
您可以使用名为string interpolation.
的C#6.0版功能在你的情况下,它将是:
@Html.Raw($"Welcome {ViewBag.Content.User.Name}!")
如果您使用的是C#版本< 6.0,然后string.Format
是您的选择:
@Html.Raw(string.Format("Welcome {0}!", ViewBag.Content.User.Name))