问题描述
如题,在ASP.NET Core Razor Pages
或者MVC
应用程序开发中,如何将路径设置为小写的?
我们知道,在ASP.NET MVC 4
或者ASP.NET MVC 5
中,可以在RegisterRoutes
配置中设置routes.LowercaseUrls = true;
的属性来轻松实现URL
路径小写的功能。
但在ASP.NET Core Razor Pages
或者 ASP.NET Core MVC
Web应用程序中是没有RegisterRoutes
这个选项的,那么在ASP.NET Core
的Web应用程序中如何实现这样的功能呢?
方案一
在ASP.NET Core
(Razor Pages
或者MVC
)Web应用程序中,是支持设置URL
路径为小写的功能的。在程序集 Microsoft.AspNet.Routing
和Microsoft.Extensions.DependencyInjection
中,可以在方法ConfigureServices(IServiceCollection services)
中。我们需要在Startup.cs
启动文件中的ConfigureServices
方法中配置如下的选项,如:
services.AddRouting(options => options.LowercaseUrls = true);
方案二
方案一是可以实现本文的需求的,即配置:
services.ConfigureRouting(setupAction =>
{
setupAction.LowercaseUrls = true;
});
但请注意: 一定要在
services.AddMvc(...)
的方法前面添加services.ConfigureRouting(...)
路由的配置。
当然,如果需要,你还可能配置如下的其他选项,比如Cookie身份认证的选项:
services.AddIdentity<IdentityUser, IdentityRole>(options =>
{
var appCookie = options.Cookies.ApplicationCookie;
appCookie.LoginPath = appCookie.LoginPath.ToString().ToLowerInvariant();
appCookie.LogoutPath = appCookie.LogoutPath.ToString().ToLowerInvariant();
appCookie.ReturnUrlParameter = appCookie.ReturnUrlParameter.ToString().ToLowerInvariant();
});
版权声明:本作品系原创,版权归码友网所有,如未经许可,禁止任何形式转载,违者必究。
发表评论
登录用户才能发表评论, 请 登 录 或者 注册