我总是在ASP.NET中伪造/模拟/存储HttpContext(在ASP.NET MVC / MonoRail中更容易).
但是我可以看到HttpContext本身可以很容易地构造,实际上有几行代码.
var tw = new StringWriter(); var workerReq = new SimpleWorkerRequest("/webapp",@"c:\here\there\wwwroot","page.aspx",tw); var context = new HtpContext(workerReq);
如果我们将这个代码包装成这样的东西它应该工作正常,我们甚至可以使用它来渲染ASPX:
using(Simulate.HttpContext()) { HttpContext.Current.BlaBla; }
所以问题是:
>不应该做的原因.
>应该这样做的原因.
>为什么它没有被广泛使用(事实上我不记得有关它的任何帖子).
我记得Phill Haack使用Reflection hacks构建HttpContext的帖子.
但它似乎并不需要.
干杯,
德米特里.