Mit diesem Beispielprojekt als Leitfaden, ich bin dabei, ein neues Projekt zu starten. Mein Projekt wird die gleiche grundlegende Architektur folgen, nur zusätzlich zu einem mvc-Projekt, werde ich auch ein wcf Web-Service-Projekt (oder möglicherweise servicestack.net) haben
Anstatt Unity für DI zu verwenden, wie im Beispiel, verwende ich Ninject. Derzeit konfiguriere ich Ninject wie folgt, um nur eine Instanz der Datenbankfabrik pro Webanforderung zu instanziieren (und somit eine Datentextklasse pro Anforderung (mit EF 4.1 Code zuerst btw))
kernel.Bind<IDatabaseFactory>()
.To<DatabaseFactory>()
.InScope(ctx => HttpContext.Current);
Ich bin neugierig, ob diese Methode ausreichend ist? Oder wäre es besser, die Fabrikklasse die Instanziierung des Datentextes pro http-Anfrage (und möglicherweise pro Thread, wenn ich für nicht webbasierte Frontends in der Zukunft entwerfen würde) behandeln zu lassen? Wenn ja, gibt es irgendwelche Beispiele dafür, wie man das machen kann?
Oder gibt es eine bessere Lösung für dieses Problem?