ASP.net MVC - 指定显示模板的完整路径

本文关键字:路径 显示 MVC net ASP | 更新日期: 2023-09-27 18:22:21

是否可以指定显示或编辑器模板的完整路径?

例如,我有以下模型:

public class ParentModel
{
    public class ChildModel { get; set; }
}

我有一个ParentController和一个ChildController,我想将子显示模板视图放在视图/子/显示模板/儿童模型.cshtml 中,将父模型.cshtml 视图放在视图/父/显示模板/父母模型.cshtml 中。

现在它找不到子显示模板,因为它正在查看视图/共享和视图/父级。

是否可以指定显示模板的完整路径或编写可以指定要查看的文件夹的 HtmlHelper?

ASP.net MVC - 指定显示模板的完整路径

我已经找到了一种方法,只有一个轻微的缺点:

@Html.DisplayFor(model => model.Child, "Child/ChildModel")

我创建了以下文件夹:

Views'Shared'DisplayTemplates'Child并将ChildModel.cshtml放在文件夹中。这样做的缺点是它不再使用模型名称来确定模板名称,我想它可能也会忽略UIHint,但它确实允许我更好地组织我的共享显示模板。