Что использовать вместо HttpContext при использовании OWIN без System.Web
В настоящее время у нас есть проект NancyFx, который мы подключили с помощью OWIN. Мы не используем System.Web, и нам нужно какое-то место для размещения нашего контекста, который живет для жизни запроса, отличного от HttpContext. Мы начали реализацию контекста для статической переменной потока, чтобы мы могли получить доступ к контексту в любом месте приложения, но мы обеспокоены тем, что использование асинхронных вызовов приведет к потере статического контекста этого потока.
Что вы используете в качестве статического средства доступа вместо HttpContext, когда вы отрываетесь от System.Web?
2 ответа
Вместо этого вы можете использовать NancyContext. Словарь Предметов в NancyContext предназначен для хранения объектов по запросу. NancyContext доступен почти везде в приложении Nancy.
Этот поток может ответить на ваш вопрос: https://groups.google.com/forum/
public class Bootstrapper : DefaultNancyBootstrapper
{
protected override void ConfigureRequestContainer(
TinyIoCContainer container, NancyContext context)
{
base.ConfigureRequestContainer(container, context);
container.Register<ICurrentRequest>(
(c, o) => new CurrentRequest(context));
}
private class CurrentRequest : ICurrentRequest
{
public CurrentRequest(NancyContext context)
{
this.Context = context;
}
public NancyContext Context { get; private set; }
}
}