Url.Action没有指向localhost

时间:2012-05-31 16:32:33

标签: asp.net-mvc html5 razor

我遇到问题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>

它返回一个虚假的localhost:

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

1 个答案:

答案 0 :(得分: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