html.actionlink с .net 4.0 отображает пустые ссылки - PullRequest
1 голос
/ 30 апреля 2010

Надеемся, что это простая проблема конфигурации.

Когда мое приложение предназначено для .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> 

Это сбрасывает часть URL.

обратная совместимость предположительно включена в мой web.config.

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

Идеи

Ответы [ 2 ]

1 голос
/ 30 апреля 2010

Это связано с маршрутом карты по умолчанию, имеющим дополнительное значение. Похоже, что .Net 4.0 меньше прощает плохое отображение пути.

0 голосов
/ 17 марта 2011

Решение следующих вопросов очень мало. Пожалуйста, проверьте ваш файл 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".

Я думаю, что это может решить ваши проблемы. Если нет, пожалуйста, обновите.

Спасибо

Камаль Кант Пансари

...