我来到一个星期前我写的MVC3项目已经停止工作并抛出以下错误:
Error 10
The call is ambiguous between the following methods or properties: 'System.Web.Mvc.Html.RenderPartialExtensions.RenderPartial(System.Web.Mvc.HtmlHelper, string)' and 'System.Web.Mvc.Html.RenderPartialExtensions.RenderPartial(System.Web.Mvc.HtmlHelper, string)
“
这是什么原因?我最近没有改变项目中的任何东西,因为它是bork。我称之为的代码如下:
<div class="page-body">
@if(!String.IsNullOrWhiteSpace(ViewBag.ErrorMessage)) {
// Output error message
Html.Raw(ViewBag.ErrorMessage);
} else {
// Render upload form
Html.RenderPartial("_UploadForm");
}
</div>
答案 0 :(得分:1)
你在Html.Raw前面缺少@符号,因为teh方法将字符串重新加回,因此需要@symbol
从MSDN获取的知识: Razor语法@运算符 在将文本呈现给HTTP响应之前对文本进行HTML编码。这个 使文本在网页中显示为常规文本 而不是被解释为HTML标记。
请以这种方式使用
<div class="page-body">
@if(!String.IsNullOrWhiteSpace(ViewBag.ErrorMessage)) {
@Html.Raw(ViewBag.ErrorMessage);
} else {
// Render upload form
Html.RenderPartial("_UploadForm");
}
</div>