0

我遇到了一个问题 w/ Url.Action 没有指向正确的本地主机,有人可以告诉我如何纠正这个问题吗?

相同的信息适用于“Html.ActionLink”

@<li>@Html.ActionLink(cattext, "Topic", "Tutorial", New With {.categorypassed = "INTRO"}, vbNull)</li>

返回以下链接:

http://localhost:62510/Tutorial/Topic?categorypassed=INTRO

但是,如果我将此信息用作“Url.Action”:

<a data-role="button" data-transition="fade" href="@Url.Action("Topic", "Tutorial", New With {.categorypassed = "INTRO"}, vbNull)" data-icon="arrow-l" data-iconpos="left">Back</a>

它返回一个虚假的本地主机:

1://localhost/Tutorial/Topic?categorypassed=INTRO
4

1 回答 1

0

省略最后一个参数:vbNull。

使用该参数调用方法重载来指定 URL 的协议,例如“http”或“https”。Null 不是一个有效的选项,这可能是您在输出中得到“1://”的原因。Web 服务器处理不同端口号上的协议,因此更改协议将导致您更改 URL 中的端口。

听起来这是您正在寻找的 URL.Action 的重载:

Public Function Action ( _
    actionName As String, _
    controllerName As String, _
    routeValues As RouteValueDictionary _
) As String
于 2012-05-31T17:27:11.970 回答