gpt4 book ai didi

asp.net-mvc - Orchard 页面中的嵌套布局

转载 作者:行者123 更新时间:2023-12-02 18:06:09 25 4
gpt4 key购买 nike

我正在尝试将现有的 ASP.NET MVC 3 网站迁移到 Orchard,这样我就可以继续构建该网站,同时利用 Orchard 提供的扩展功能。我正在尝试将整个现有网站包装到 Orchard 模块中,这样我就可以保持所有现有功能完整,并继续添加功能,或根据需要将旧功能移植到新范例中。

我在直接复制到 Orchard 时遇到的主要问题是,我利用了 MVC 3 中的布局层次结构为相关页面指定相同的父布局,而相关页面又可能有自己的父布局,等等。

当我复制现有 View 时,出现错误,布局是自定义 Orchard WebPageView 上的只读属性,但是当我将基本 View 类型更改回标准 MVC 3 基本类型时,路径不会由于模块文件夹结构,符合我的观点。

在 Orchard 中运行的网站是否根本不支持指定嵌套布局的功能,或者是否存在我缺少的内置解决方法?

谢谢!-J

最佳答案

Orchard 的布局系统早于 MVC,并且工作方式略有不同。恐怕您将不得不稍微重构一下。 Orchard 中的 View 依赖于形状的概念,形状是类似于 View 模型的动态对象。当需要渲染形状时,系统会寻找最合适的模板将其转换为 html。大多数 Controller 操作都会返回一个形状结果,该结果将呈现为必须在布局形状中定义的内容区域的子项。布局形状渲染可以通过指定替代项来更改(请参阅 http://weblogs.asp.net/bleroy/archive/2010/12/14/switching-the-layout-in-orchard-cms.aspx )。

所以最终 Orchard 没有使用 Razor/ASP.NET Web Pages/MVC3 所提倡的那种反向母版页布局系统。相反,您使用形状及其替代品来获得类似的结果,但观点不同,因为形状被添加到嵌套容器中,而不是让包含的对象指定它们要插入的内容。

关于asp.net-mvc - Orchard 页面中的嵌套布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11695134/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com