Fehler ist selbsterklärend. Der Typ hat keinen öffentlichen, parameterlosen Konstruktor.
Aber wie führe ich eine Abhängigkeitsinjektion in ASP.NET Core MVC durch, um ihn in den tatsächlichen Konstruktor aufzulösen, den ich möchte?
Der Lazy-Typ verfügt über einen Konstruktor mit anderen Abhängigkeiten, die in der Datei „startup.cs“ registriert sind. Das ist der Konstruktor, den ich möchte.
Ich habe versucht, einen Standardkonstruktor hinzuzufügen. Aber ich muss den Konstruktor mit Abhängigkeiten verwenden.
Anwendung ist eine ASP.NET Core MVC-App. Ich verwende nicht Unity oder andere DI-Frameworks, sondern das, das mit ASP.NET Core MVC geliefert wird.
Ich habe in anderen Beiträgen gelesen, dass Frameworks wie Unity dieses Problem automatisch beheben. Ich möchte wissen, wie dies in ASP.NET Core MVC gelöst werden kann.
Ich habe einen Controller, der von einem Typ abhängt, der verzögert initialisiert wird.
Code: Select all
SampleController
Code: Select all
public class SampleController
{
private readonly Lazy _LazyTypeA;
public SampleController(LazyTypeA lazyTypeA)
{
_LazyTypeA = lazyTypeA;
}
public Action TestAction()
{
_LazyTypeA.SomeMethod()