Что использовать вместо 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; }
    }
}
Другие вопросы по тегам