Вы можете использовать HttpSimulator
класс из www.koders.com - Subtext.TestLibrary
Просто вызывает
new Subtext.TestLibrary.HttpSimulator().SimulateRequest();
правильно устанавливает HttpContext
, поэтому вы также можете добавлять значения в словарь Application
.
Как сказал Джефф, он устанавливает HttpApplicationFactory._theApplicationFactory._state
, используя Reflection, как показано ниже, но на самом деле вам не нужно об этом беспокоиться.
Type appFactoryType = Type.GetType("System.Web.HttpApplicationFactory, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a");
object appFactory = ReflectionHelper.GetStaticFieldValue<object>("_theApplicationFactory", appFactoryType);
ReflectionHelper.SetPrivateInstanceFieldValue("_state", appFactory, HttpContext.Current.Application);