可以使用以下代码在启动文件中设置大小写敏感性:
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddSingleton();
services.AddControllers(options =>
{
options.UseCaseInsensitiveRouting = true;
});
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env, CaseSensitiveRouting caseSensitiveRouting)
{
if (caseSensitiveRouting.IsCaseSensitive)
{
app.Use((context, next) =>
{
context.Request.Path = new PathString(context.Request.Path.ToString().ToLower());
return next();
});
}
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseRouting();
app.UseAuthentication();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
});
}
private class CaseSensitiveRouting
{
public bool IsCaseSensitive { get; }
public CaseSensitiveRouting(IConfiguration configuration)
{
IsCaseSensitive = configuration.GetValue("CaseSensitiveRouting") == true;
}
}
}