gpt4 book ai didi

routes - Umbraco 路由

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

我正在研究一个由 Visual Studio 中的一些人开发的项目,该项目与 Umbraco 合作。起初,我以为这是一个 .NET MVC 应用程序,Umbraco 位于其之上。然而,经过更彻底的研究后,我可以说它与 .NET MVC 应用程序无关。解决方案中没有 Controller ,也没有program.cs 和startup.cs。相反,umbraco 和 umbraco_client 文件夹内有 umbraco 文件。

当然,一切都很好。但如何呢?例如,当我们编写:localhost:50174/go/apply 时,它可以找到正确的 Umbraco 内容节点。 由于没有 MVC 路由,谁负责路由?

最佳答案

如上所述,Umbraco 内部结构默认处理 Umbraco 站点的路由。用于渲染它的 Controller 是这里的 RenderMvcController : https://github.com/umbraco/Umbraco-CMS/blob/dev-v7/src/Umbraco.Web/Mvc/RenderMvcController.cs

Umbraco 在 .NET MVC 应用程序内运行,因此您认为它与 MVC 无关的假设实际上是不正确的。完全可以注册您自己的路线和区域,就像您在任何其他 .NET MVC 应用程序中必须做的那样。默认情况下 - Umbraco 只是注册其管道来根据其管理的内容处理请求(毕竟它是一个内容管理系统)。当您输入像 /go/apply 这样的 URL 时,Umbraco 有一个 ContentFinder 来定位与此 URL 路径对应的内容,然后使用 RenderMvcController 渲染内容 (当然,除非路由被劫持)。

您可以在此处查看 URL 内容查找器:https://github.com/umbraco/Umbraco-CMS/blob/dev-v7/src/Umbraco.Web/Routing/ContentFinderByNiceUrl.cs

关于routes - Umbraco 路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48866376/

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