1
6
HttpContext.Current 得到或 集合 httpContext对象“”。并且httpContext有一个公共构造函数,它接受httpWorkerRequest(abstract,use simpleWorkerRequest),您可以完全伪造httpContext。 我同意其他人的看法,您可以重构代码以删除此依赖项,但在某些情况下,您必须伪造httpContext。当前的内容,在这种情况下,如果您搜索,将显示此问题… |
2
5
在我看来,您需要将对httpContext的调用包装在另一个对象中,然后您可以使用ioc在正确的环境中切换到正确的对象。例如,将imappath作为接口,然后实现为httpmappath或consoleappmappath等。 |
3
1
在编写使用httpContext.current的单元测试时,我们做了类似的事情。我们有一个名为ihttpContext的接口,它包含了我们从普通httpContext需要的一切。然后,我们没有调用httpContext.current,而是有一个扩展方法(httpContext.current.make())返回这个IHttpContext接口。 在扩展方法中,我们可以决定httpContext.current是否可用,如果不可用,那么我们可以手动构建一个“可测试”对象并返回它。 当然,这扩展到如果你在使用iRequest、iResponse等对象,就必须编写它们,但我认为这是可以预料的。 |
4
1
不确定这是否有帮助,但我在为ASP.NET Web应用编写一些单元测试时遇到了类似的问题。在某个API调用中的某个时刻,httpContext.current.xxxxx正在设置一个不在范围内的属性。我发现答案是在单元测试中添加以下属性:
[测试方法()]
|
5
0
这些代码是特定于网站的。我不明白为什么它属于商业逻辑。
可能需要重新考虑此代码将排除
|
Robert King · Unity C#语法问题-转换位置 1 年前 |
JBryanB · 如何从基本抽象类访问类属性 1 年前 |
law · 检查答案按钮的输入字符串格式不正确 2 年前 |
i_sniff_ket · 在unity之外使用unity类 2 年前 |