Castello di Windsor: come registrare un elenco di codice (invece che con un file di configurazione)
-
27-09-2019 - |
Domanda
Vorrei registrare un oggetto con un parametro di lista, ma senza l'utilizzo di un file di configurazione. questo è il file di configurazione che attualmente utilizzo:
<?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>
Soluzione
Si può fare in questo modo:
using ESImportCommon.Email;
....
var container = new WindsorContainer(new XmlInterpreter());
container.AddFacility<FactorySupportFacility>();
container.Register(Component.For<IEmailParser>().ImplementedBy<EmailParser>());
Si noti che non è necessario passare un'istanza di XmlInterpreter
al costruttore, se non si vuole qualsiasi configurazione nel proprio web / app.config.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow