4

在 c#MVC4 中如何获取服务器路径。例如:http://192.169.1.120:60632

是否有一个辅助函数可以将之类的东西~/aFolder/file.htm转换为绝对路径?理想情况下,我想要一种获取任何给定网址并转换为完整绝对网址的方法。例如可以应付..

并且可以在 c# 代码中的任何位置工作 - 即在动作控制器、signalR 集线器、模型等中。

当我部署到远程服务器时它仍然可以工作。

4

3 回答 3

3

使用 中Request.Url可用的属性Controller。这将返回一个包含请求信息的Uri对象。从那里,您可以访问AbsoluteUriPort属性以获取所需的信息。

如果您有兴趣从 SignalR 获取 url 信息,请尝试查看此问题答案

于 2013-08-25T13:10:37.190 回答
2

试试这个,

System.Web.HttpContext.Current.Server.MapPath(@"~/FolderName")

你也可以试试这些

string path = AppDomain.CurrentDomain.GetData("FolderName").ToString(); HostingEnvironment.MapPath(@"~/FoldeName");

于 2013-08-25T13:17:10.177 回答
0

Url.Action在 MVC 中,您可以使用-的第四​​个参数获取完全限定的 URL protocol

Url.Action("Index", "Home", null, Request.Url.Scheme)
于 2013-08-25T13:16:48.030 回答