gpt4 book ai didi

nancy - 对 Nancy 的 View 引擎是否达成共识?

转载 作者:行者123 更新时间:2023-12-04 16:38:56 48 4
gpt4 key购买 nike

得知 Nancy 有自己的 razor 实现时,我有点吃惊,它的行为可能像也可能不像 razor。在实践中,这会导致问题吗?什么是“大多数人”用于 Nancy View 引擎的?为什么没有使用真正的 Razor ?

最佳答案

首先是简单的答案。 Razor 引擎是迄今为止 Nancy 下载次数最多的 View 引擎 https://www.nuget.org/packages?q=nancy.viewengines

现在是更复杂的问题

Why was the real razor not used?



因为“真正的”(我将假设您指的是 ASP.NET 堆栈使用的那个)Razor 引擎与内置于 ASP.NET 堆栈(HttpContext 及其所有 friend )所以没有直接的方法可以与 Nancy 一起使用它。

对此稍微长一点的答案是,您必须了解 Razor 实际上是一个解析器,而 Razor View 引擎位于消费者和解析器的中间。

Nancy 使用 Razor 解析器,但我们必须拥有自己的 View 引擎,因为这使 Nancy 能够解析和执行 Razor 模板。

现在,它确实变得更加复杂。您在 ASP.NET Razor View 引擎中看到的许多功能,例如母版页、部分、各种帮助程序、_ViewStart 等,都不是 Razor(解析器)功能,而是已构建的附加功能集进入 View 引擎(您几乎可以将其视为中间件)。

这意味着对于我们的引擎,我们不得不重新实现其中的大部分功能,因为这是 Razor View 引擎所期望的。

我想指出的是,如果可能的话,那么我们很乐意放弃我们自己的实现并使用 Microsoft 构建的实现(我们需要维护的代码更少,这意味着我们将支持 100% 相同的功能集),但不幸的是,这不是我们的决定……恐怕我们不能依赖于他们的抽象

希望这能解决问题

/一种

关于nancy - 对 Nancy 的 View 引擎是否达成共识?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35600531/

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