您如何从 OwinStartup 文件访问此 属性?
How do you access this property from the OwinStartup file?
我正在创建 ASP.NET Identity 2.1 WebAPI 服务。它允许注册、登录和授权 authtokens。在我在 this tutorial 之后创建的 Owin 启动 class 中是以下代码:
public class OwinStartup
{
public void Configuration(IAppBuilder app)
{
HttpConfiguration httpConfig = new HttpConfiguration();
ConfigureOAuthTokenGeneration(app);
ConfigureWebApi(httpConfig);
app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);
app.UseWebApi(httpConfig);
}
private void ConfigureOAuthTokenGeneration(IAppBuilder app)
{
// Configure the db context and user manager to use a single instance per request
app.CreatePerOwinContext(AppDbContext.Create);
app.CreatePerOwinContext<AppUserManager>(AppUserManager.Create);
// Plugin the OAuth bearer JSON Web Token tokens generation and Consumption will be here
}
private void ConfigureWebApi(HttpConfiguration config)
{
config.MapHttpAttributeRoutes();
var jsonFormatter = config.Formatters.OfType<JsonMediaTypeFormatter>().First();
jsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
}
}
现在,在 ConfigureOAuthTokenGeneration 方法中,创建了 DbContext 和 UserManager。我的问题:如何在我的 WepAPI 项目中以不同的 class 访问此 dbContext 和 UserManager?
AppDbContext context = HttpContext.Current.GetOwinContext().Get<AppDbContext>();
AppUserManager userManager = HttpContext.Current.GetOwinContext().Get<AppUserManager();
与 AccountController(在示例项目中)检索这些值的方式相同。
我正在创建 ASP.NET Identity 2.1 WebAPI 服务。它允许注册、登录和授权 authtokens。在我在 this tutorial 之后创建的 Owin 启动 class 中是以下代码:
public class OwinStartup
{
public void Configuration(IAppBuilder app)
{
HttpConfiguration httpConfig = new HttpConfiguration();
ConfigureOAuthTokenGeneration(app);
ConfigureWebApi(httpConfig);
app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);
app.UseWebApi(httpConfig);
}
private void ConfigureOAuthTokenGeneration(IAppBuilder app)
{
// Configure the db context and user manager to use a single instance per request
app.CreatePerOwinContext(AppDbContext.Create);
app.CreatePerOwinContext<AppUserManager>(AppUserManager.Create);
// Plugin the OAuth bearer JSON Web Token tokens generation and Consumption will be here
}
private void ConfigureWebApi(HttpConfiguration config)
{
config.MapHttpAttributeRoutes();
var jsonFormatter = config.Formatters.OfType<JsonMediaTypeFormatter>().First();
jsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
}
}
现在,在 ConfigureOAuthTokenGeneration 方法中,创建了 DbContext 和 UserManager。我的问题:如何在我的 WepAPI 项目中以不同的 class 访问此 dbContext 和 UserManager?
AppDbContext context = HttpContext.Current.GetOwinContext().Get<AppDbContext>();
AppUserManager userManager = HttpContext.Current.GetOwinContext().Get<AppUserManager();
与 AccountController(在示例项目中)检索这些值的方式相同。