這件事需要我一個(gè)星期的時(shí)間我已經(jīng)做了很多方法來(lái)找到解決方案mvc 與 autofac 完全集成,但 web api NO 和 NO!:-(這是我的代碼: AutofacDi public static class AutofacDi{ public static ValueTuple<IContainer, HttpConfiguration> Initialize() { var assembly = Assembly.GetExecutingAssembly(); var builder = new ContainerBuilder(); var config = GlobalConfiguration.Configuration; builder.RegisterControllers(assembly); builder.RegisterApiControllers(assembly).PropertiesAutowired(); builder.RegisterHttpRequestMessage(config); builder.RegisterAssemblyModules(assembly); builder.RegisterAssemblyTypes(assembly).PropertiesAutowired(); builder.RegisterFilterProvider(); builder.RegisterWebApiFilterProvider(config); builder.RegisterModelBinders(assembly); builder.RegisterWebApiModelBinderProvider(); builder.RegisterModelBinderProvider(); builder.RegisterModule<AutofacWebTypesModule>(); builder.RegisterSource(new ViewRegistrationSource()); builder.RegisterType<T4MVC.Dummy>().AsSelf(); builder.RegisterType<FoodDbContext>() .As<IUnitOfWork>() .InstancePerLifetimeScope(); builder.Register(context => (FoodDbContext)context.Resolve<IUnitOfWork>()) .As<FoodDbContext>() .InstancePerLifetimeScope(); builder.RegisterType<ApplicationDbContext>().As<DbContext>().InstancePerLifetimeScope(); builder.RegisterType<UserStore<ApplicationUser>>().As<IUserStore<ApplicationUser>>(); builder.RegisterType<ApplicationUserManager>(); builder.RegisterType<ApplicationSignInManager>(); builder.Register(c => new IdentityFactoryOptions<ApplicationUserManager>() { DataProtectionProvider = new DpapiDataProtectionProvider("FoodBaMa") });
2 回答

至尊寶的傳說(shuō)
TA貢獻(xiàn)1789條經(jīng)驗(yàn) 獲得超10個(gè)贊
看來(lái)您可能已經(jīng)解決了您的問(wèn)題,我希望這是真的。這里有很多東西需要消化,但我確實(shí)看到了一個(gè)關(guān)于 OWIN 集成和 Web API 的常見(jiàn)錯(cuò)誤,如 Autofac文檔中所述:
OWIN 集成中的一個(gè)常見(jiàn)錯(cuò)誤是使用
GlobalConfiguration.Configuration
. 在 OWIN 中,您可以從頭開(kāi)始創(chuàng)建配置。GlobalConfiguration.Configuration
使用 OWIN 集成時(shí),不應(yīng)在任何地方引用。
您可能會(huì)在設(shè)置中遇到其他/其他挑戰(zhàn);如果這樣做,請(qǐng)嘗試擺脫GlobalConfiguration.Configuration
.

忽然笑
TA貢獻(xiàn)1806條經(jīng)驗(yàn) 獲得超5個(gè)贊
我通過(guò)評(píng)論解決了這個(gè)問(wèn)題:
builder.RegisterWebApiFilterProvider(config);
和
builder.RegisterHttpRequestMessage(config);
在AutofacDi
- 2 回答
- 0 關(guān)注
- 173 瀏覽
添加回答
舉報(bào)
0/150
提交
取消