2017-07-31 1 views
0

J'ai créé plusieurs bibliothèques de classes de noyau asp. Et chaque bibliothèque contient un contexte db. Selon mon projet, j'ai pointé tous les dbcontexts (comme Abonnement, locataire, employé db contexte) vers une base de données.Comment pointer vers une base de données avec plusieurs dbcontexts

Ceci est mon startup.cs

services.AddDbContext<ApplicationDbContext>(options => 
      options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"))); 
     services.AddDbContext<Employees.EmployeeDbContext>(options => 
      options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"))); 
     services.AddDbContext<Tenants.TenantDbContext>(options => 
      options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"))); 

Je les utiliser dans mon contrôleur de la maison comme ci-dessous.

EmployeeManager EmployeeManager; 
    TenantManager TenantManager; 
    public HomeController(EmployeeDbContext Context,TenantDbContext tenant) 
    { 
     EmployeeManager = new EmployeeManager(new EmployeeRepository(Context)); 
     TenantManager = new TenantManager(new TenantRepository(tenant)); 
    } 

et ses tables créant seulement des employés, mais je dois tenants..etc aussi dans la même base de données

Est-il possible de le faire, je suis frappé ici. Quelqu'un peut-il m'aider.

+0

Pourquoi votre application besoin de plusieurs DbContexts? Je ne vois pas l'utilité d'avoir plus de contextes sur une seule base de données. Cela causerait probablement plus de problèmes que d'utiliser :) –

+0

Nous voulons utiliser ces bibliothèques de base dans plusieurs projets Nous les avons donc créés séparément –

Répondre

0

Je pense que vous devez pointer le contexte pour créer les tables:

dotnet commandes cli:

dotnet ef migrations add -c TenantDbContext InitialDatabase 

dotnet ef database update -c TenantDbContext