asp.net mvc和HttpContext.Current

时间:2014-12-17 08:27:07

标签: c# asp.net-mvc unit-testing

我试图通过避免使用HttpContext.Current和使用每个Controller上提供的更容易模拟的HttpContextBase实例来维护我的asp.net mvc5应用程序的单元测试能力。

问题是我需要来访问控制器外部的HttpContextBase,而不确定这里的最佳做法。有什么建议吗?

我需要这个的原因是我希望在HttpContext.Items集合中缓存当前用户的TimeZone,以便在自定义automapper函数的config类中使用控制器外部,该函数将我的域模型转换为视图模式。

1 个答案:

答案 0 :(得分:0)

我使用由Daniel Cazzulino创建的Moq - 你可以在nuget上找到它。

然后,您可以在单元测试中轻松模拟httpContext - 无需在MVC项目中跳过箍,从而允许您愉快地使用HttpContext.Current。