在我看来,我希望将HTML文件的内容呈现为局部视图。但是,当我将以下代码添加到.cshtml视图中时,它给出了这个错误:
@Html.Partial(Url.Content("~/Test/main.html"))
错误:
Exception Details: System.InvalidOperationException: The partial view '/Scripts/main.html' was not found or no view engine supports the searched locations. The following locations were searched:
/Scripts/main.html
不过,文件在物理上是存在的。有没有其他我应该这样做的方式?
发布于 2014-01-02 02:48:20
您不能使用Html.Partial
,因为this.It是一种特殊的辅助方法,用于呈现局部视图。相反,您可以像这样添加一个Action
:
[ChildActionOnly]
public ActionResult GetHtmlPage(string path)
{
return new FilePathResult(path, "text/html");
}
您可以使用Html.Action
助手方法从您的View
调用它:
@Html.Action("GetHtmlPage","controllername", new { path = "~/Test/main.html" })
发布于 2015-05-05 10:14:24
发布于 2014-01-02 02:49:14
简单的答案是将main.html文件重命名为main.cshtml,它将被Razor视图引擎识别以进行渲染。
https://stackoverflow.com/questions/20871938
复制相似问题