C# 如何更改路由参数';姓名

C# 如何更改路由参数';姓名,c#,.net,asp.net-mvc,routing,global-asax,C#,.net,Asp.net Mvc,Routing,Global Asax,我正在实现一些api。该api向我发送http get请求。所有参数的名称都是大写的 因此,查询字符串如下所示: myURL?CALLID=1&STATE=START public class VotBoxController : Controller { [HttpGet] public void Notify(int CALLID, string STATE) { } } [HttpGet] public void Notify(int call

我正在实现一些
api
。该api向我发送http get请求。所有参数的名称都是大写的

因此,查询字符串如下所示:

myURL?CALLID=1&STATE=START
public class VotBoxController : Controller
{
    [HttpGet]
    public void Notify(int CALLID, string STATE)
    {

    }
}
[HttpGet]
public void Notify(int callId, string state)
{
}
我已将新的MapRoute添加到我的
Global.asax

routes.MapRoute(
    "VotBox",
    "VotBox/Notify/{CALLID}{STATE}",
    new { controller = "VotBox", action = "Notify", CALLID = -1, STATE = ""},
    new { STATE = "STARTCALL" }
);
我的
控制器
的参数名称为大写。因此,我的
操作
如下所示:

myURL?CALLID=1&STATE=START
public class VotBoxController : Controller
{
    [HttpGet]
    public void Notify(int CALLID, string STATE)
    {

    }
}
[HttpGet]
public void Notify(int callId, string state)
{
}
但我希望我的参数是用标准的CamelCase命名的。 如何更改参数名称以使操作如下所示:

myURL?CALLID=1&STATE=START
public class VotBoxController : Controller
{
    [HttpGet]
    public void Notify(int CALLID, string STATE)
    {

    }
}
[HttpGet]
public void Notify(int callId, string state)
{
}

尝试更改您的
路线。将路线映射到:

routes.MapRoute(
    "VotBox",
    "VotBox/Notify/{callId}{state}",
    new { controller = "VotBox", action = "Notify", callId = -1, state= ""},
    new { state= "STARTCALL" }
);

尝试更改您的
路线。将路线映射到:

routes.MapRoute(
    "VotBox",
    "VotBox/Notify/{callId}{state}",
    new { controller = "VotBox", action = "Notify", callId = -1, state= ""},
    new { state= "STARTCALL" }
);

根据您的特定路由定义,它将适用于以下所有URL

/VotBox/Notify/4/STARTCALL
/VotBox/Notify/4/startcall
/VotBox/Notify?CALLID=3&STATE=anyString
/VotBox/Notify?callId=3&state=anyString

参数名称的大小写无关紧要。它将适用于小写或大写。

根据您的特定路由定义,它将适用于以下所有URL

/VotBox/Notify/4/STARTCALL
/VotBox/Notify/4/startcall
/VotBox/Notify?CALLID=3&STATE=anyString
/VotBox/Notify?callId=3&state=anyString
参数名称的大小写无关紧要。它适用于小写或大写