2012-02-02 68 views
1

我想在我的主视图中呈现局部视图。但是,我得到的错误:我的观点的未找到MVC PartialView

The partial view 'CompletedJobParts' was not found or no view engine supports the searched locations. ~/Views/Jobs/CompletedJobParts.aspx ~/Views/Jobs/CompletedJobParts.ascx ~/Views/Shared/CompletedJobParts.aspx ~/Views/Shared/CompletedJobParts.ascx ~/Views/Jobs/CompletedJobParts.cshtml ~/Views/Jobs/CompletedJobParts.vbhtml ~/Views/Shared/CompletedJobParts.cshtml ~/Views/Shared/CompletedJobParts.vbhtml

(抱歉格式)...

物理布局(位置)是 查看/ MDT /工作/ CompletedJobParts.cshtml和我m试图从同一位置的视图调用它(即Views/MDT/Jobs/Index.cshtml)。我想这可能是一个路由问题,所以我进入:

routes.MapRoute(
     "MDT", 
     "MDT/{controller}/{action}/{id}", 
     new { controller = "Home", action = "Index", id = UrlParameter.Optional } 
     ); 

到我的Global.asax.cs文件,但它似乎并没有搜索有两种(即没有MDT节中的位置上来它正在寻找)。

我使用这index.cshtml内作出:

<div id="parts_div"> 
     @{Html.RenderPartial("CompletedJobParts", Model);} 
    </div> 

什么我需要做的就是我的视角以寻找我的PartialView?

TIA

回答

10

因为它似乎正在从一个不同的结构控制器打电话,试图指定的路径:

 
    @{Html.RenderPartial("~/Views/MDT/Jobs/CompletedJobParts.cshtml", Model);} 
+0

谢谢。完美工作。 – Jason 2012-02-02 05:42:17

+0

也适合我。试图添加一个新的局部视图来修改布局。万分感谢!! – Kaos 2013-02-09 19:46:35

1

什么是“MDT”和你为什么使用它作为的一个子目录视图文件夹?从我的理解 - 当试图渲染部分时,它试图在以视图类型(〜/ Views/Jobs /)命名的'Views'文件夹下的文件夹中找到它,或者它不能在共享视图(〜/ Views/Shared /)中找到它。你有没有尝试删除额外的目录级别?