Registrieren Sie null als Instanz im Unity-Container

Ich habe eine Repository-Klasse mit optionaler Abhängigkeit:

class MyRepository : BaseRepository, IMyRepository
{
    public MyRepository(IDataContext dataContext, ICacheProvider cacheProvider = null)
        : base(dataContext, cacheProvider)
    {}

    // …
}

Das Vorhandensein des cacheProvider-Parameters dient als Strategie für das Repository. Ich möchte den Unity-Container folgendermaßen einrichten:

Container.RegisterType<IDataContext, MyDataContext>(new PerResolveLifetimeManager(), new InjectionConstructor())
         .RegisterInstance<ICacheProvider>(null) // ???
         .RegisterType<IMyRepository, MyRepository>();

Das heißt Ich weise nicht auf einen bestimmten InjectionConstructor mit einem Parameter für MyRepository hin, sondern verwende den Standardkonstruktor mit null alscacheProvider Parameter.

Gibt es eine Möglichkeit, dies zu tun?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage