Я использую Autofac и мой типы регистрации выглядит следующим образом:Регистрация Тип которым основано на заказ печенья
public class Global : HttpApplication, IContainerProviderAccessor
{
static IContainerProvider _containerProvider;
public IContainerProvider ContainerProvider { get { return _containerProvider; }}
protected void Application_Start(object sender, EventArgs e)
{
var builder = new ContainerBuilder();
var myCookie = Request.Cookies["MyTestCookie"];
if (myCookie != null)
builder.RegisterType<FirstService>().As<IService>().InstancePerRequest();
else
builder.RegisterType<SecondService>().As<IService>().InstancePerRequest();
_containerProvider = new ContainerProvider(builder.Build());
}
}
Но это дает ошибку говоря «Запрос не доступен в этом контексте». Могу ли я зарегистрировать свои типы по-другому, чтобы иметь возможность использовать информацию от Request
?
Конечно, вы не можете использовать информацию из запроса, который еще не пришел на сервер! – Michael