html.actionlink与.net 4.0呈现空链接

时间:2010-04-29 21:48:31

标签: .net c#-4.0 actionlink

这应该是一个简单的配置问题。

当我的应用程序针对.Net 3.5时

此代码

<%= Html.ActionLink("Forgot your password?","ForgotPassword") %>

呈现:

<a href="/Account/ForgotPassword">Forgot your password?</a> 

当我的应用程序以.Net 4.0为目标时

相同的代码呈现:

<a href="">Forgot your password?</a> 

它正在删除网址部分。

据说在我的web.config中启用了向后兼容性。

<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID">

想法?

2 个答案:

答案 0 :(得分:1)

这与具有额外值的默认地图路线有关。看起来.Net 4.0对错误的路径映射不太宽容。

答案 1 :(得分:0)

以下问题的解决方案非常少。请检查您的global.asax.cs文件并更改行

new { controller = "Home", action = "Index", id = "" } // Parameter defaults

new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults

注意:在MVC2.0中,可选字段标记为“UrlParameter.Optional”。

我认为这可以解决您的问题。如果没有,请更新。

谢谢,

Kamal Kant Pansari