小编Mic*_*den的帖子

Simple Injector - 构造函数注入当前Web API请求的HttpRequestMessage

在我的Web API项目中,我有一个需要当前请求的依赖项.

代码如下:

public interface IResourceLinker {
  Uri Link(string routeName, object routeValues);
}

public class ResourceLinker : IResourceLinker {
  private readonly HttpRequestMessage _request;

  public ResourceLinker(HttpRequestMessage request) {
    _request = request;
  }

  public Uri Link(string routeName, object routeValues) {
    return new Uri(_request.GetUrlHelper()
        .Link(routeName, routeValues));
  }
}

public class TestController : ApiController {
  private IResourceLinker _resourceLinker;

  public TestController(IResourceLinker resourceLinker) {
    _resourceLinker = resourceLinker
  }

  public Test Get() {
    var url = _resourceLinker.Link("routeName", routeValues);

    // etc.
  }
}
Run Code Online (Sandbox Code Playgroud)

使用Simple Injector,是否可以在运行时将当前请求注入容器?

我尝试了以下方法:

public class …
Run Code Online (Sandbox Code Playgroud)

.net c# dependency-injection simple-injector

3
推荐指数
1
解决办法
2638
查看次数

标签 统计

.net ×1

c# ×1

dependency-injection ×1

simple-injector ×1