Bor*_*ens 9 c# ioc-container unity-container
我有一个有两个ctors的课.一个无参数和一个带参数.
Unity将默认采用gready方法并转到最后一个ctor.
如何定义要使用的ctor(我想参数化)而不在我的类中添加对Unity的依赖?我认为可以在我的容器创建中做到这一点,但我不知道如何.
目前我的注册条目如下所示:
container.RegisterType<IConfigurationService, SqlConfigurationService>()
Run Code Online (Sandbox Code Playgroud)
更新
我试图尽可能避免在XML(配置文件)中编程.
EXTRA
如何使用一个参数注册一个构造函数(它应该被注入)?
说ILoggerService已经注册,我想使用构造函数
public SqlConfigurationService(ILoggerService logger){}
Run Code Online (Sandbox Code Playgroud)
Mar*_*ann 19
我现在附近没有Unity,但据我记忆,你可以这样做:
container.RegisterType<IConfigurationService, SqlConfigurationService>(
new InjectionConstructor())
Run Code Online (Sandbox Code Playgroud)