在mvc4中获取错误

时间:2013-05-03 03:03:32

标签: asp.net asp.net-mvc asp.net-mvc-4

错误: -

  

执行处理程序'System.Web.Mvc.HttpHandlerUtil + ServerExecuteHttpHandlerAsyncWrapper'的子请求时出错。

我的主页面视图是这个

    {
    ViewBag.Title = "Start";
}

<h2>Start</h2>
<script type="text/javascript"> 

    $(document).ready(function () {

        $("#test1").click(function (e) {
            $("#firstpartialview").css("display", "none");
            $("#secondpatialview").css("display", "none");
            $("#firstpartialview").css("display", "block");
        });

        $("#test2").click(function (e) {
            $("#firstpartialview").css("display", "none");
            $("#secondpatialview").css("display", "none");
            $("#secondpatialview").css("display", "block");                
        });
    });
</script>
<a id="test1"></a>
<a id="test2"></a>
<div id="firstpartialview">@Html.Action("FirstView", "Home")   </div>
<div id="secondpatialview">@Html.Action("SecondView", "Home")   </div>

我的控制器是: -

public ActionResult Start()
{
    return View();
}

public ActionResult FirstView()
{
    ModelA objA = new ModelA();
    return PartialView(objA);
}

public ActionResult SecondView()
{
    ModelB objB = new ModelB();
    return PartialView(objB);
}

我的部分视图就是这个

_partialA.cshtml
@model demo3.Models.ModelA

@{
    ViewBag.Title = "_partialA";
}

<h2>_partialA</h2>
<div>@Html.EditorFor(m => m.EmployeeId)  </div>
<div>@Html.EditorFor(m => m.EmployeeName) 

另一个局部视图就是这个

_partialB.cs.html
@model demo3.Models.ModelB

@{
    ViewBag.Title = "_partialB";
}

<h2>_partialB</h2>
<div>@Html.EditorFor(m => m.Comapny)  </div>
<div>@Html.EditorFor(m => m.FisacalYear)  </div>

请帮我解决错误..浏览器此错误即将到来

  

未找到部分视图“FirstView”或视图引擎不支持搜索的位置。搜索了以下位置:
    〜/浏览/首页/ FirstView.aspx
    〜/浏览/首页/ FirstView.ascx
    〜/查看/共享/ FirstView.aspx
    〜/查看/共享/ FirstView.ascx
    〜/浏览/首页/ FirstView.cshtml
    〜/浏览/首页/ FirstView.vbhtml
    〜/查看/共享/ FirstView.cshtml
    〜/查看/共享/ FirstView.vbhtml

2 个答案:

答案 0 :(得分:0)

错误非常具体。这一行导致了您的错误:

<div id="firstpartialview">@Html.Action("FirstView", "Home")   </div>

无法找到视图FirstView。您需要将视图放在错误消息告诉您更改视图引擎搜索视图的位置之一的位置。

答案 1 :(得分:0)

错误意味着mvc正在尝试加载文件(默认情况下,如果你没有指定视图文件名,它会按Action名称检查,在这种情况下,它是FirstView),但它找不到它。

您可以在return语句中指定视图文件名:

return PartialView(string "View", object model)

这可以像这样使用(假设_partialA是你视图的cshtml文件名):

return PartialView("_partialA", objA);