Entity Framework Core múltiples cadenas de conexión en el mismo DBContext?

Tengo una aplicación Asp.Net Core con Entity Framework Core que inicializo de la siguiente manera:

services.AddDbContext<ApplicationDbContext>(options => 
         options.UseSqlServer(sqlConnectionString));

Esto funciona bien, pero tengo un escenario en el que necesito leer / escribir desde la base de datos primaria para las operaciones normales, pero para algunas operaciones necesito leer desde un servidor alternativo (un objetivo de replicación que es de solo lectura que usamos para los informes).

Con la forma en que la nueva API Core hace todo a través de la inyección de dependencia y la configuración en StartUp.cs, ¿cómo cambio las cadenas de conexión, pero uso la misma clase ApplicationDbContext?

Sé que una opción sería tener un duplicado de la clase ApplicationDbContext que registre con el sistema DI usando una cadena de conexión diferente, pero me gustaría evitar mantener dos objetos DBContext idénticos solo porque a veces necesito leer desde una base de datos diferente servidor (pero con el mismo esquema exacto).

¡De antemano, gracias por cualquier consejo!

Respuestas a la pregunta(1)

Su respuesta a la pregunta