MVC Html.ActionLink将Area呈现为QueryString而不是URL的一部分

时间:2015-08-31 14:44:37

标签: asp.net .net asp.net-mvc razor

一个项目中的以下行:

@Html.ActionLink("Today's Specials", "Specials", "Shop", new {area = "Books" } , null)

正确呈现以下链接网址:

http://example.com/Books/Shop/Specials

但在另一个visual studio应用程序中,完全相同的链接会呈现以下不正确的链接网址:

http://example.com/Shop/Specials?area=Books

这两个应用都使用.net 4.5,但工作的第二个应用使用稍微较新版本的System.Web.MVC(5.2.30128.0 vs .5.0.11001.0)和System.Web.Razor(3.0.30128.0与3.0.11001.0)。

我在这里缺少什么?

1 个答案:

答案 0 :(得分:1)

我怀疑,你拥有它,因为在其中一个你没有在Global.asax中调用的项目中:

AreaRegistration.RegisterAllAreas();

这也可能取决于您的路线。