如何指定局部视图的区域

时间:2011-12-05 11:09:48

标签: asp.net-mvc asp.net-mvc-3 partial-views

我有一个区域(比如用户)。我通过Ajax调用从action方法返回一个PartialView,如下所示。

return PartialView("_Users");

但此时mvc会搜索常规共享文件夹和常规用户文件夹。它不是在区域内搜索局部视图。因此我收到了一个错误。 :(

如何从视图返回时指定此局部视图位于某个区域下?

1 个答案:

答案 0 :(得分:3)

如果您没有在该区域外调用此操作,则不会在那里搜索。让我们说你在以下文件夹中的部分视图:

  

〜/地区/用户/查看/共享/ _Users.cshtml

并假设您在Bar区域的Poo控制器的User操作中调用此部分视图,搜索顺序将为此:

  

〜/地区/用户/查看/浦/ _Users.cshtml

     

〜/地区/用户/查看/共享/ _Users.cshtml

     

〜/查看/共享/ _Users.cshtml

如果您在区域外调用此局部视图,它仍将根据您的控制器和区域(如果有)查找以下文件夹和相关文件夹:

  

〜/查看/共享/ _Users.cshtml

但不在User区域内。

看来你的局部视图是一个应用程序范围的局部视图。我的建议是将它移到以下文件夹:

  

〜/查看/共享/