为什么在使用AttributeRouting时,JavaScript中使用@Url.Action生成的链接不是小写的?

为什么在使用AttributeRouting时,JavaScript中使用@Url.Action生成的链接不是小写的?,javascript,asp.net-mvc-4,asp.net-mvc-areas,attributerouting,url-action,Javascript,Asp.net Mvc 4,Asp.net Mvc Areas,Attributerouting,Url Action,我在JavaScript函数中有以下代码: var url = '@Url.Action(MVC.Membership.User.ActionNames.Update, MVC.Membership.User.Name)'; url += "?userName=" + userName; ul.append("<li><a href=" + url + "\>" + userName + "</a></li>"); 行动方法是这样的: [GE

我在JavaScript函数中有以下代码:

var url = '@Url.Action(MVC.Membership.User.ActionNames.Update, MVC.Membership.User.Name)';

url += "?userName=" + userName;

ul.append("<li><a href=" + url + "\>" + userName + "</a></li>");
行动方法是这样的:

[GET("Users/Update/{userName}")]
public virtual ActionResult Update(string userName)
我在链接中得到的路径是:

http://localhost:8087/membership/User/Update?userName=leniel
我希望是:

http://localhost:8087/membership/users/update?userName=leniel
所以我的问题是:为什么链接不是小写的,因为应用程序中的所有其他链接都是用小写字母生成的?这是不受支持的,还是我忘记了一些与区域设置相关的配置?

在来自AttributeRouting creator的。。。原来是我的错

现在我明白问题了

如果我这样做:

var url = '@Url.Action(MVC.Membership.Permission.ActionNames.GrantRevoke, MVC.Membership.Permission.Name, new { area = "Membership", roleName= "Teste" }, null)';
var url = '@Url.Action(MVC.Membership.Permission.ActionNames.GrantRevoke, MVC.Membership.Permission.Name, new { area = "Membership" }, null)';
正确生成URL:

var url = '/membership/permissions/grantrevoke/teste';
但如果我这样做:

var url = '@Url.Action(MVC.Membership.Permission.ActionNames.GrantRevoke, MVC.Membership.Permission.Name, new { area = "Membership", roleName= "Teste" }, null)';
var url = '@Url.Action(MVC.Membership.Permission.ActionNames.GrantRevoke, MVC.Membership.Permission.Name, new { area = "Membership" }, null)';
我明白了:

var url = '/Membership/Permission/GrantRevoke';
很明显,我需要传递roleName参数