Saltar al contenido

Uso de varias cadenas de conexión

Este grupo de trabajo ha estado mucho tiempo investigando para dar solución a tu interrogante, te ofrecemos la resolución por esto esperamos resultarte de gran apoyo.

Solución:

Si echa un vistazo a la documentación oficial de las cadenas de conexión en asp.net core, su ejemplo muestra la conexión string guardado en appsettings.json Me gusta esto


  "ConnectionStrings": 
    "BloggingDatabase": "Server=(localdb)\mssqllocaldb;Database=EFGetStarted.ConsoleApp.NewDb;Trusted_Connection=True;"
  ,

Que, cuando se adaptara a su ejemplo, se convertiría.


  "ConnectionStrings": 
    "DefaultConnection": "Server=.\SQLEXPRESS;Database=Bar;Trusted_Connection=True;MultipleActiveResultSets=true",
    "FooBar": "Server=.\SQLEXPRESS;Database=Bar;Trusted_Connection=True;MultipleActiveResultSets=true"
  

Configuración del contexto en Startup.cs con la configuración string ser leído desde la configuración usaría el GetConnectionString() método con la configuración key

public void ConfigureServices(IServiceCollection services) 
    // Add framework services.
    services
        .AddEntityFramework()
        .AddSqlServer()
        .AddDbContext(options =>
            options.UseSqlServer(Configuration.GetConnextionString("DefaultConnection")))
        .AddDbContext(options =>
            options.UseSqlServer(Configuration.GetConnextionString("FooBar")));

Ahora, un problema observado con la configuración del contexto anterior en la pregunta original es que ahora hay dos cadenas de conexión para el mismo contexto.

Intentar usar varias cadenas de conexión para trabajar en el mismo contexto causará problemas, ya que el marco no sabría qué opción usar al solicitar el contexto.

Eres capaz de confirmar nuestra misión fijando un comentario y dejando una valoración te lo agradecemos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *