尝试在包含参数创建的View顶部的Razor ASP.Net MVC代码块中放置一个URL.Action调用 - 它不会解析并导致页面出错。 看到类似的问题,他们删除“@”,但我已经尝试过。 我正在使用一个针对jpg url的Action,因为它指向一个重写器。
代码位于页面顶部:
@{
ViewBag.Title = @Model.event_title + " - Event - HOTSHOE";
ViewBag.MetaDescription = @Model.event_title + " - HOTSHOE";
Layout = "~/Views/Shared/_Hotshoe.cshtml";
ViewBag.MainImage = Url.Action("thumbnail", "Events" , new { id=Model.event_ID }) + "/imagename.jpg";
}
有问题的一行是
ViewBag.MainImage = Url.Action("thumbnail", "Events" , new { id=Model.event_ID }) + "/imagename.jpg";
在编辑器中抱怨
语法错误,','预期
在Model.event_ID之后但在“}”之前。
此代码适用于代码块之外的页面的另一部分,@ Url.Action和@ Model.event_ID
前面的@查看页面时会抱怨:
编译器错误消息:CS1513:}预期
来源错误:
第7476行:}第7477行:}第7478行:}
有什么想法吗? TIA。
答案 0 :(得分:1)
嗯,我没有发现为什么它不起作用,但是......
<强>解决方案强>
@{
ViewBag.Title = @Model.event_title + " - Event - HOTSHOE";
ViewBag.MetaDescription = @Model.event_title + " - HOTSHOE";
Layout = "~/Views/Shared/_Hotshoe.cshtml";
}
@(ViewBag.MainImage = Url.Action("thumbnail", "Events" , new { id=Model.event_ID }) + "/imagename.jpg";)
修改强>
好的,我发现了问题。
ViewBag.Title = @Model.event_title + " - Event - HOTSHOE";
ViewBag.MetaDescription = @Model.event_title + " - HOTSHOE";
从@
@Model.event_title