Kann ich eine typisierte Factory-Einrichtung verwenden, um die Implementierung basierend auf (enum) -Parametern zurückzugeben?

Nicht sicher, ob dies möglich ist oder nicht.

Ich muss die korrekte Implementierung eines Dienstes basierend auf einem Aufzählungswert zurückgeben. Die handcodierte Implementierung würde also ungefähr so ​​aussehen:

public enum MyEnum
{
  One,
  Two
}    

public class MyFactory
{
  public ITypeIWantToCreate Create(MyEnum type)
  {
    switch (type)
    {
       case MyEnum.One
           return new TypeIWantToCreate1();
           break;
       case MyEnum.Two
           return new TypeIWantToCreate2();
           break;
       default:
           return null;       
    }    
  }
}

Die zurückgegebenen Implementierungen weisen zusätzliche Abhängigkeiten auf, die über den Container injiziert werden müssen, sodass eine handgerollte Fabrik nicht funktioniert.

Ist das möglich und wenn ja, wie würde die Registrierung aussehen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage