区分大小写路由

问题描述 投票:0回答:1

我在ASP.NET Core 2.2应用程序中寻找区分大小写的路由。

例如:

[HttpGet("/yes}")]
public IActionResult Test()

domain.com/yes和domain.com/YES将采取相同的措施。但我希望这完全区分大小写。

https://www.visualupload.com/u/2CU

https://www.visualupload.com/U/2CU(你是大写的,都在工作。)

我怎样才能解决这个问题?

asp.net-core .net-core
1个回答
1
投票

正如其他海报所提到的那样,我强烈反对这一行动,因为出于多种原因这可能是一场噩梦。但是,可以使用默认路由执行此操作。

public class MyController : Controller
{
    public IActionResult MyAction(string id){ }
}

标准路由过程会将/My/MyAction/TeST的请求传递给您的MyAction方法。

然后,您可以使用条件逻辑在MyAction方法中执行区分大小写的操作。

同样,这不是推荐的方法,但它是您实现目标的一种方式。

编辑:在这里你可能有类似的东西

switch(id)
{
    case "lowercase":
        return MyLowercaseAction();
    case "MiXeDcAsE":
        return MyMixedCaseAction();
    //etc.
}

然后,您将拥有返回各种方案的操作结果的各个方法。或者你还需要做什么。关键是您将收到信息,并需要自己采取区分大小写的操作。

© www.soinside.com 2019 - 2024. All rights reserved.