RouteLink空HREF [英] RouteLink empty Href

查看:131
本文介绍了RouteLink空HREF的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

即时通讯使用MVC3剃刀视图引擎。我想用某条路的HREF

Im using MVC3 with the Razor View Engine. I want to use a certain Route for a Href

以下是路由注册(路线似乎工作,我可以使用浏览器直接使用)

the following is the Route registration, (the route seems to work as i can use the browser to directly use it)

routes.MapRoute(
    "AddItem",
    "{listAreaName}/{listSlug}/Add",
    new { controller = "List", action = "AddItem" }
    );

但@ Html.RouteLink是行不通的。它返回一个空HREF的链接

but the @Html.RouteLink just does not work. it returns an empty href for the link

下面是我的一些尝试

@Html.RouteLink("Add New Item", "AddItem", new { controller="List", action="AddItem", listAreaName = Model.ListAreaName, listSlug = Model.Slug })<br />
@Html.RouteLink("Add New Item1", "AddItem", new { controller = "List", listAreaName = Model.ListAreaName, listSlug = Model.Slug })<br />
@Html.RouteLink("Add New Item2", "AddItem", new { action = "AddItem", listAreaName = Model.ListAreaName, listSlug = Model.Slug })<br />
@Html.RouteLink("Add New Item3", "AddItem", new { controller = "list", action = "additem", listAreaName = Model.ListAreaName, listSlug = Model.Slug })<br />
@Html.RouteLink("Add New Item4", "additem", new { controller = "List", action = "AddItem", listAreaName = Model.ListAreaName, listSlug = Model.Slug })<br />

@Html.RouteLink("Add New Item5", "additem", new { listAreaName = Model.ListAreaName, listSlug = Model.Slug })<br />
@Html.RouteLink("Add New Item6", "AddItem", new { controller = "ListController", action = "AddItem", listAreaName = Model.ListAreaName, listSlug = Model.Slug })<br />

如果我错过了航线名称,它产生的工作联系,但它没有以正确的格式

if I miss out the route name, it generates working link, but its no in the right format

最让我发现材料是V1的preVIEW发布。有这个问题进行排序?

most of the material i found was for a preview release of v1. has this issue be sorted?

任何想法的?

推荐答案

在你有一个错误的最后一个路由链路,则不应使用控制器后缀:

In the last route link you have a mistake, you should not use the Controller suffix:

@Html.RouteLink(
    "Add New Item6", 
    "AddItem", 
    new { 
        controller = "List", 
        action = "AddItem", 
        listAreaName = Model.ListAreaName, 
        listSlug = Model.Slug 
    }
)

至于其他人来说他们都生成以下网址: / ListAreaName /弹头/添加在ASP.NET MVC 3 RTM假设你有缺省路由设置并且您已经添加在你的问题中所示的路线。

As far as the others are concerned they all generate the following url: /ListAreaName/Slug/Add in ASP.NET MVC 3 RTM assuming you have the default routes setup and you have added the route shown in your question.

这篇关于RouteLink空HREF的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆