这是我的操作方法中的代码:
var bundleUrl = Scripts.Url("~/Scripts/MyBundle");
当我尝试对这个操作方法进行单元测试时,我得到以下错误/堆栈跟踪:
System.ArgumentNullException
Value cannot be null.
Parameter name: httpContext
at System.Web.HttpContextWrapper..ctor(HttpContext httpContext)
at System.Web.Optimization.Scripts.Url(String virtualPath)
有任何想法吗?
我已经适当地模拟了 HttpContext,因为请求被填充,我可以访问路由等。
我需要设置捆绑包吗?(就像我在 Global.asax 上所做的那样)
编辑:
在使用 ILSpy 查看 System.Web.Optimization 的源代码后,似乎 Scripts 类从静态 HttpContext.Current 实例(为空)创建了一个 HttpContextWrapper。