gpt4 book ai didi

asp.net-mvc-3 - Orchard 如何在不调用 RenderBody 的情况下逃脱?

转载 作者:行者123 更新时间:2023-12-02 02:17:24 24 4
gpt4 key购买 nike

我一直在剖析 Orchard CMS 渲染和 View 引擎,以了解它是如何组合在一起的。我发现 RenderBody 和 RenderSection 都没有被调用。据我了解,Razor View 引擎需要调用其中之一。

是什么绕过了必须调用 RenderBody 或 RenderSection 或 Razor 抛出异常的要求?

是否存在自定义 View 引擎 (ThemeAwareViewEngine)?如果是这样,它如何处理解析 Razor 语法以生成内容?

谢谢。

最佳答案

其实恰恰相反。 Razor 本身不需要调用 RenderBody 它是具有此要求的 RazorViewEngine。肯定会有另一个使用 Razor 的 View 引擎,它具有完全不同的工作方式。看看https://github.com/Antaris/RazorEnginehttps://github.com/Buildstarted/RazorSharp我还编写了一个 markdown View 引擎,它使用 razor 进行一些简单的布局。

从阅读源代码来看,他们似乎已经创建了一些自定义 View 引擎。他们的 RazorViewEngine 用他们自己的自定义 WebViewPage 替换了 razor 生成文件的基类,该 WebViewPage 有一个方法 Display 其中 Zone 是的别名。这就是允许他们呈现 subview 的原因,此外似乎 LayoutAwareViewEngine 中有几种类型的区域,例如 DocumentZoneContentZone等等。

所以最后他们做了很多自定义代码。

关于asp.net-mvc-3 - Orchard 如何在不调用 RenderBody 的情况下逃脱?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9826084/

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