Url.Content 显然不会扩展动态生成的字符串

Url.Content does apparently not expand dynamically generated string

我正在尝试根据剃刀视图中的外部变量动态生成图像路径。我见过其他类似的问题,但它们似乎没有解决我的特定问题。 razor 解析结果字符串的顺序似乎有问题。如果我尝试在字符串下方展开,razor 似乎无法正确展开路径

var THEME_IMAGE_PATH = "@Url.Content(string.Format("/~/Scripts/dhtmlx/codebase/{0}_imgs/", ViewData["THEME"]))";

如果我自己输入正确的绝对路径

var THEME_IMAGE_PATH = "@Url.Content(string.Format("/Home/Scripts/dhtmlx/codebase/{0}_imgs/", ViewData["THEME"]))";

或具有相对路径的完全静态字符串

var THEME_IMAGE_PATH = "@Url.Content("/~/Scripts/dhtmlx/codebase/SkyBlue_imgs/")";

一切正常。

我的语法中是否有某些内容使 razor 无法扩展动态生成的字符串的结果?

结果是第一个 / 。一旦我删除它,它就起作用了。