无法获取在ASP中的MVC站点的根网址

问题描述:

我需要得到网站根URL的剃刀页中JavaScript code:

I need to get site root url in razor page in javascript code:

...
var siteRootUrl = '@Url.Content("~")';
...

但是,所有我从这个得到的是'/'.

But all I get from this is '/'.

要获取当前的主机端口(mysite.com,www.mysite.com或本地主机:9876)

To get the current host with port (mysite.com, www.mysite.com or localhost:9876)

 Request.Url.Authority

要得到你的当前应用程序文件夹(/或/ appfolder /)

To get your current application folder: (/ or /appfolder/)

 Url.Content("~/")

要混合使用?

 String.Format("{0}://{1}{2}",Request.Url.Scheme, Request.Url.Authority,Url.Content("~/"))

或(视TORM指出)

 Url.Action("", null, null, Request.Url.Scheme)
 Url.Action("", null, null, "http")
 Url.Action("", null, null, "https") 

要生成一个动作URL:

To generate an Action URL:

 Url.Action("About","Home",null,"http")