我收到了以下错误。
System.Web.Mvc.dll中发生了'System.InvalidOperationException'类型的异常,但未在用户代码中处理
其他信息:未找到部分视图“../Shared/Partial/_ReferencePartial.cshtml”或视图引擎不支持搜索的位置。搜索了以下位置:
我在Area/Admin
有登录控制器。在Login.cshtml
视图文件中,我引用了包含对脚本文件的引用的Partial View
文件。此文件位于文件夹Solution/Project/Views/Shared/Partial
。
以下是我的Login.cshtml
查看文件代码。
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>@Messages.Login</title>
@Html.Partial("../Shared/Partial/_ReferencePartial.cshtml")
</head>
...
答案 0 :(得分:0)
如果要直接在主视图中加载局部视图,可以使用Html.Action
帮助器:
@Html.Action("Load", "Home")
或者如果您不想通过“加载”操作,请使用HtmlPartial hepler:
@Html.Partial("_LoadView")
如果您想使用Ajax.ActionLink
,请将Html.ActionLink
替换为:
@Ajax.ActionLink(
"load partial view",
"Load",
"Home",
new AjaxOptions { UpdateTargetId = "result" }
)
当然,您需要在页面中包含一个显示部分的持有者:
<div id="result"></div>
另外不要忘记包括:
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.js")" type="text/javascript"></script>
在主视图中以启用Ajax.*
帮助程序。并确保在web.config中启用了不显眼的javascript(默认情况下应该是这样):
<add key="UnobtrusiveJavaScriptEnabled" value="true" />