【发布时间】:2014-06-18 11:30:50
【问题描述】:
例如,我有一个主窗体并想将一个记录器实例作为私有字段注入。
我注册了记录器
GlobalContainer.RegisterType<TCNHInMemoryLogger>.Implements<ILogger>;
我的主表单中有一个私有字段
private
FLogger: ILogger;
我想做的就是这样:
private
[Inject]
FLogger: ILogger;
在我的 DPR 文件中,我有典型的 delphi 方法来创建主窗体:
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(Tfrm_CNH, frm_CNH);
Application.Run;
end.
我应该在表单创建方式上进行哪些更改才能正确注入私有字段?
顺便说一句,如果我用 GlobalContainer.Resolve 解析 Form.OnCreate 中的字段,它工作正常。但我想避免在我的表单中使用 GlobalContainer 变量。
【问题讨论】:
-
注入私有字段是一种气味。考虑改用受保护的。