Asp.net mvc 2 如何使用ActionLink转到另一页asp.net MVC

Asp.net mvc 2 如何使用ActionLink转到另一页asp.net MVC,asp.net-mvc-2,Asp.net Mvc 2,嗨,我有一个行动的链接,我想把它链接到放置 我用了 但这导致了在再次阅读后,我想我可能需要更多的信息,但这里是我目前的建议 我假设InternalTags是您的控制器,Test是您的操作 要在URL中包含ArticleID,需要将ArticleID添加为“routeValue” 但这并不能完全解决问题 您的页面位于Tags/InternalTag/Test中 测试页面上的链接定义为: <%: Html.ActionLink("Test", "DisplayArticle", "News")

嗨,我有一个行动的链接,我想把它链接到放置

我用了

但这导致了在再次阅读后,我想我可能需要更多的信息,但这里是我目前的建议

我假设InternalTags是您的控制器,Test是您的操作

要在URL中包含
ArticleID
,需要将
ArticleID
添加为“
routeValue

但这并不能完全解决问题

您的页面位于Tags/InternalTag/Test中

测试页面上的链接定义为:

<%: Html.ActionLink("Test", "DisplayArticle", "News")%>

将决心:

如果将ArticleID添加到链接(如下所示):


或者:

<%: Html.ActionLink("Test", "DisplayArticle", new {Controller="News", ArticleID = "b491bee6-772c-4184-804a-13e53e50aa3d"})%>

这将解析为
标记/News/DisplayArticle?ArticleID={GUID}

如果我遗漏了什么,我将从另一个角度讲述:

对我来说,标签是你所在的网站,这将使新闻成为一个完全不同的网站,如果你想去那里,你需要将你的链接硬编码为:

如果它们是同一个站点,则需要在Global.asax中对路由进行排序

也许你可以对我的答案发表评论,我会相应地编辑这个

第一条评论后编辑: 如果您可以正确地获得路由映射,通常使用操作链接就足以选择正确的路由,它需要查看路由的列出方式,并更改使用的顺序和默认值,以确保签名足够具体,可以选择所需的路由

要强制路由到特定选项,可以使用
Html.RouteLink(linkText、routeName、routeValue)


这将允许您控制要使用的确切路线,然后传入控制器、操作和ArticleID的RouteValue。

再次阅读后,我想我可能需要更多信息,但以下是我目前的建议

我假设InternalTags是您的控制器,Test是您的操作

要在URL中包含
ArticleID
,需要将
ArticleID
添加为“
routeValue

但这并不能完全解决问题

您的页面位于Tags/InternalTag/Test中

测试页面上的链接定义为:

<%: Html.ActionLink("Test", "DisplayArticle", "News")%>

将决心:

如果将ArticleID添加到链接(如下所示):


或者:

<%: Html.ActionLink("Test", "DisplayArticle", new {Controller="News", ArticleID = "b491bee6-772c-4184-804a-13e53e50aa3d"})%>

这将解析为
标记/News/DisplayArticle?ArticleID={GUID}

如果我遗漏了什么,我将从另一个角度讲述:

对我来说,标签是你所在的网站,这将使新闻成为一个完全不同的网站,如果你想去那里,你需要将你的链接硬编码为:

如果它们是同一个站点,则需要在Global.asax中对路由进行排序

也许你可以对我的答案发表评论,我会相应地编辑这个

第一条评论后编辑: 如果您可以正确地获得路由映射,通常使用操作链接就足以选择正确的路由,它需要查看路由的列出方式,并更改使用的顺序和默认值,以确保签名足够具体,可以选择所需的路由

要强制路由到特定选项,可以使用
Html.RouteLink(linkText、routeName、routeValue)


这将允许您控制您想要使用的确切路线,然后传入控制器、操作和ArticleID的RouteValue。

您好,您是对的……我想是因为我们对网站的不同部分有不同的注册。对我来说,他们是一个网站,即localhost:1337,但我的标签有一个不同的新闻地图路径,这就是为什么它是,你好,你是对的…我想,因为我们有不同的注册为我们的网站的不同部分。对我来说,它们是1个网站,即localhost:1337,但我的标签有一个不同的新闻映射路径,这就是为什么它是和