mvc html url,MVC HTML动作链接在URL中插入大量%20

我正在使用C#ASP MVC3,并且使用通过城堡windsor传递的参数生成菜单。MVC HTML动作链接在URL中插入大量%20

当我开发和本地测试,从这个代码生成的URL被罚款:

@foreach(var menuItem in Model.MenuItems)

{

var dic = new RouteValueDictionary();

foreach (var item in menuItem.QueryValues)

{

dic.Add(item.Key, item.Value);

}

@Html.ActionLink(menuItem.Name, menuItem.ControllerAction, dic)

}

但是,当它被推到了测试服务器,该URL决定增加:

%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20

在每个正在通过URL传递的参数之间。

不完全确定要显示哪些区域来帮助解决问题。它可能是xdt:Transform:Replace在web.config中使用或完全不同。任何帮助,你可以提供将不胜感激。

谢谢。

更新:我发现是什么导致正在生成的链接中的所有这些空间。 XML替换在进行替换时在XML文件中添加了返回值和空格。我现在要解决这个问题,因为它不是很理想,所以这个问题已经改变了,我们该如何阻止xdt:替换为添加这些不需要的空格并返回?

+1

'%20'是空格的HTML编码。你确定你使用的参数没有空格吗? –

2012-08-06 14:29:52

+0

除了@AndreCalil评论之外,'%0D%0A'对Windows换行符进行了编码。 –

2012-08-06 14:32:21

+0

@Oded这是一个很好的观点,我忽略了这一部分。大卫,你是否在本地和测试服务器上使用相同的数据源? –

2012-08-06 14:33:49

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值