我最近开始使用 TDD 和依赖注入。这是一个很大的心态变化,我仍在努力将所有部分拼凑在一起。
我有一个用于所有业务逻辑的服务层,以使控制器尽可能薄。我的服务中的某些服务需要 HttpContext。什么是创建服务的最佳方式,以便也可以进行单元测试。
目前我有一个看起来像这样的 ServiceBase
public class HttpContextService
{
private HttpContextBase _ServiceContext;
public HttpContextBase ServiceContext
{
get
{
if (_ServiceContext == null)
_ServiceContext = new HttpContextWrapper(HttpContext.Current);
return _ServiceContext;
}
set { _ServiceContext = value; }
}
}
所以这意味着我所有的服务都可以从这个服务继承。我为 HttpContextBase 创建属性的原因是我可以在对服务进行单元测试时设置它。1.有没有办法将HttpContext注入Unity Bootstrap文件中的服务。? 2.这是正确的方法还是我错过了什么?
提前致谢。就像我说的,我正在努力理解整个 TDD 依赖注入的编码方式。