Ich hatte Probleme, wodurch mein Container nicht aufgerufen wurde, wenn er in meiner global.asax registriert war, also dachte ich, dass dies daran liegen könnte, dass ich jetzt eine OWIN-Startup-Klasse verwende. Ich habe die Instanziierung des Containers jetzt in diese Klasse verschoben. Ich frage mich, ob dies angemessen ist zu tun:Wie kann ich bei Verwendung einer OWIN-Startup-Klasse meinen Castle Windsor-Container entsorgen, nachdem ich meine Abhängigkeiten registriert habe?
[assembly: OwinStartup(typeof(Startup))]
namespace Namespace.WebApi
public class Startup : IDisposable
{
private readonly WindsorContainer _Container;
public Startup()
{
_Container = new WindsorContainer();
_Container.Install(FromAssembly.Named("Namespace.WebApi.Installers"));
}
public void Configuration(IAppBuilder app)
{
HttpConfiguration config = new HttpConfiguration();
config.Services.Replace(typeof(IHttpControllerActivator),
new WindsorHttpControllerActivator(_Container));
/// other configuration
}
public void Dispose()
{
_Container.Dispose();
}
}
Arbeitete eine Belohnung! Viel lieber diesen Ansatz, als das ganze startup.cs wegwerfbar zu machen – Braydie