замок виндзор: как зарегистрировать список программно (вместо этого с файлом конфигурации) - PullRequest
1 голос
/ 05 октября 2010

Я хотел бы зарегистрировать объект с параметром списка, но без использования файла конфигурации. это файл конфигурации, который я сейчас использую:

<?xml version="1.0" encoding="utf-8" ?>
<castle>
  <components>
    <component id="EmailParser"
     service="ESImportCommon.Email.IEmailParser, ESImportCommon"
     type="ESImportCommon.Email.EmailParser, ESImportCommon">
    </component>
  </components>
</castle>

1 Ответ

1 голос
/ 05 октября 2010

Вы можете сделать это следующим образом:

        using ESImportCommon.Email;

        ....

        var container = new WindsorContainer(new XmlInterpreter()); 
        container.AddFacility<FactorySupportFacility>();
        container.Register(Component.For<IEmailParser>().ImplementedBy<EmailParser>());

Обратите внимание, что вам не нужно передавать экземпляр XmlInterpreter в конструктор, если вы не хотите любую конфигурациюв вашем web / app.config.

...