1
입력 된 공장의 메소드를 구현 제공 :다음과 같이 나는이 유형이 지정된 팩토리 인터페이스를
public interface ILogMessageFactory
{
ILogMessage Create(LogMessageType logMessageType, String text);
}
을 나는 모두가 다음 등록하고 :
public void Install(IWindsorContainer container, IConfigurationStore store)
{
container.AddFacility<TypedFactoryFacility>();
container.Register(
Component.For(typeof(ConsolePrompter)),
Component.For<ILogger>().ImplementedBy<ConsoleLogger>().LifeStyle.Transient,
Component.For<ILogMessageFactory>().AsFactory(),
Component.For<ILogMessage>().ImplementedBy<LogMessage>().LifeStyle.Transient
);
}
문제는 제가 구현하려는 것입니다 ILogMessageFactory.Create
방법 자신, 내가 돌아 오기 전에 몇 가지를 설정합니다.
Component.For<ILogMessageFactory>().ImplementedBy<LogMessageFactory>().AsFactory()
나는이 잘못 접근하고 있는가 :
나는 어떤 성공없이 명백한 순진 솔루션을 시도했습니다? 주어진 객체의 생성자에서 모든 초기화를 유지해야합니까?
초기화하려는 것은 어떤 종류입니까? –
지금은 생성자에서 수행 할 수 없었던 작업은 거의 없습니다 (로그 메시지의 타임 코드처럼). 비록 내가 창조가되기 전에해야 할 일이 있음을 알게 될지 모르지만. 공장을 통해 어떤 물건을 만들지 선택하는 것은 어떻습니까? 그런 다음 공장 팩토리를 만들거나 Create() 함수를 구현하는 것이 더 좋은 아이디어입니까? –