asp.net-mvc - RenderPartial 如何确定在哪里可以找到 View ?

标签 asp.net-mvc asp.net-mvc-3 razor

好的。谷歌搜索可能会失败,我记得不久前读过这篇文章,但找不到它。

我在不同的目录中有一个 View 和一个部分 View 。在 View 中我说 @Html.RenderPartial("[partial view name]"); RenderPartial 如何确定要查看的位置?这一定是一个约定,但它是什么?

我的 View 位于:WebRoot\Views\Admin\ 文件夹中,部分 View 位于 WebRoot\Views\Admin\Partials

不确定这是否正确设置。

我正在使用 MVC 3(Razor 引擎)

最佳答案

你可以,但是你必须注册路由,告诉 View 引擎去哪里寻找。 Global.asax.cs 中的示例您将拥有:

ViewEngines.Engines.Add(new RDDBViewEngine()); 

类(class)是:

public class RDDBViewEngine : RazorViewEngine
{
    private static string[] NewPartialViewFormats = new[] {         
        "~/Views/Shared/Partials/{0}.cshtml" ,       
        "~/Views/{0}.cshtml"
    };

    public RDDBViewEngine()
    {
        base.PartialViewLocationFormats = base.PartialViewLocationFormats.Union(NewPartialViewFormats).ToArray();
    }

}

{0} 适用于所有包含部分内容的子文件夹。

关于asp.net-mvc - RenderPartial 如何确定在哪里可以找到 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7640790/

相关文章:

javascript - 从 MVC 应用程序中的其他站点获取带有 src 的 iframe 内容

asp.net-mvc-3 - 使用 Knockout.js 从列表中删除项目

c# - Ajax.BeginForm 中的 LoadingElementId 不显示加载图像

asp.net-mvc-3 - 在 ASP.NET MVC 3 中应用数据注释时,你打算如何使用提示、描述、排序

image - Action 图像 MVC3 Razor

asp.net - ASP.NET 中的 Windows 身份验证模式使用 Active Directory 组名(Windows 2000 之前)?

asp.net-mvc - 带有 JSON REST Web 服务的 ASP.NET MVC

带有复选框的 Ajax.ActionLink(...)

asp.net - 在 Web.Config 中添加 HtmlHelper NameSpace 不起作用

asp.net - 如何在javascript中设置定时间隔?