Inyectar una dependencia en OWIN Middleware y por solicitud web con Simple Injector

Estoy tratando de encontrar la mejor manera de inyectar todas mis dependencias en el Middleware OWIN personalizado que he escrito para una aplicación de API web. Un ejemplo simple sería el DbContext que estoy usando. Tengo un middleware que necesita consultar potencialmente en función de la solicitud. El problema que tengo es que quiero que mi DbContext tenga un alcance WebApiRequestLifestyle. Mi DbContext está registrado como tal:

container.Register<MobileDbContext>(Lifestyle.Scoped);

Obviamente, esto no funciona:

container.Options.DefaultScopedLifestyle = new WebApiRequestLifestyle();

Porque necesito el MobileDbContext en mi Middleware usando algo como:

app.CreatePerOwinContext(() =>
{
    return container.GetInstance<MobileDbContext>();
};

Intenté un estilo de vida híbrido, pero eso tampoco funcionó porque no creo que el Middleware sea técnicamente algo que pueda caer en un estilo de vida "limitado". Probablemente esté más cerca de un singleton, creo.

¿Hay una mejor manera de diseñar mi aplicación para evitar este problema o abordarlo con algún tipo de estilo de vida personalizado?

Respuestas a la pregunta(1)

Su respuesta a la pregunta