ASP MVC相对URL路径(不是文件)

时间:2013-07-18 19:59:38

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

我的本​​地主机上的<a href='/ViewReport'>链接工作正常,但在服务器上整个站点位于“serverfolder”文件夹中,因此链接变为http://somesite/serverfolder/ViewReport,这不是一个有效的网址。我已经看到如何使用〜来访问文件的根目录,但不知道如何使用url路径来访问它们。我想为本地和远程部署使用相同的链接。我怎么做到这一点?谢谢!

1 个答案:

答案 0 :(得分:5)

这样做:

var urlHelper = new UrlHelper(Request.RequestContext);
string url = Request.Url.GetLeftPart(UriPartial.Authority) 
   + urlHelper.Action("ViewReport", 
     new { userId = UserName, reportId = PI.ElementAt(i).TempUserID });

或者,如果您不想使用UrlHelper.Action,则可以这样做:

string url = Request.Url.GetLeftPart(UriPartial.Authority) + "/ViewReport...";