微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 Razor Pages 路由的开头添加应用程序名称?

如何解决如何在 Razor Pages 路由的开头添加应用程序名称?

假设我有一个 RazorPages 应用程序,其页面位于 Pages 文件夹下的文件夹中,如下图所示:

enter image description here

很标准。我希望此应用程序可用于不同的客户端,以便他们使用不同的 URL 来访问它。我可以在 RRate\Index.cshtml 文件中使用 @page "/RRate/Index/{sName}" 指令,以便 URL <root>\RRate\Index\client_name 将 client_name 绑定到 sName。

我的问题是:我可以使用像 <root>\client_name\RRate\Index 这样的 URL 以便客户端名称是路由的第一部分吗?我将如何实施这样的路线?

毫不奇怪,@page "/{sName}/RRate/Index" 指令不起作用。

我在启动时使用 .NET Core 3.1、services.AddRazorPages();endpoints.MapRazorPages();

我查看了 endpoints.MapDynamicControllerRoute(),但这种方法似乎与 Razor 页面不相符。我错了吗?

解决方法

答案就在@mj1313 提到的 article 中。

我为每个页面添加了 PageRoutes(如果有一种方法可以在一个路由中执行此操作,我会四处游荡),如下所示:options.Conventions.AddPageRoute("/RRate/Index","{survey}/RRate/Index");

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。