如何使用 StructureMap 在 Global.asax 中注册 IAuthenticationManager

本文关键字:注册 IAuthenticationManager asax Global 何使用 StructureMap | 更新日期: 2023-09-27 18:30:23

我想用这段代码在Application_Start()中注册IAuthenticationManager:

//
 x.For<IAuthenticationManager>().Use(HttpContext.Current.GetOwinContext().Authentication);  

当我运行我的 mvc5 项目时,我收到此错误

没有欠。在上下文中找到环境项

如何使用 StructureMap 在 Global.asax 中注册 IAuthenticationManager

我相信

您在此处调用的 Use 重载正在尝试立即解决,并且在应用程序启动期间没有当前的 HttpContext。 尝试对具有用于构造的 Func 参数的"使用"重载。

x.For<IAuthenticationManager>().Use(ctx => HttpContext.Current.GetOwinContext().Authentication);