2

我正在尝试创建一个虚拟目录相对链接到某个未知(到 WebAPI)资源的ApiController.

例子:

http://some/path/webapi/does/not/know

WebAPI Url 帮助器似乎与路由紧密耦合,并且没有像 MVC 变体那样的 Content() 方法。我试图避免使用任何不可模拟的 HTTP 上下文信息来进行此调用(例如HttpContext.Current)。

谢谢您的帮助!

4

2 回答 2

1

你总能做到,

var urlBuilder = new System.UriBuilder(Request.Url.AbsoluteUri) { Path = "webapi/does/not/know" };

var uri = urlBuilder.Uri

这样,您就不需要依赖 UrlHelper。基本 url 是从当前请求中推断出来的。

于 2013-05-17T13:56:39.587 回答
0

您可以尝试以下两个选项:

  1. HostingEnvironment.MapPath()
  2. System.Web.Mvc.UrlHelper在您的 API 控制器中创建一个
于 2013-05-17T14:17:02.500 回答