使用IComponentContext注册新组件
本文关键字:组件 新组件 IComponentContext 注册 使用 | 更新日期: 2023-09-27 18:20:47
给定一个现有对象实例,如何使用IComponentContext注册新类型?
我可以使用这样的构建器来实现它:
var userSession = new UserSession();
builder.Register(x => userSession).As<UserSession>().InstancePerRequest();
但是如何使用IComponentContext
var registration = RegistrationBuilder.ForType<UserSession>().AsSelf().InstancePerRequest().CreateRegistration();
ComponentContext.ComponentRegistry.Register(registration);
感谢
试试这个:
var registration = RegistrationBuilder
.ForDelegate<UserSession>((c, p) => userSession)
.ExternallyOwned()
.AsSelf()
.InstancePerRequest()
.CreateRegistration();
componentContext.ComponentRegistry.Register(registration);