4ee8b9101d
Create working for tenant and added in efcore and data layer
40 lines
1.2 KiB
C#
40 lines
1.2 KiB
C#
using Emergence.data.Contexts;
|
|
using Microsoft.EntityFrameworkCore;
|
|
using Microsoft.EntityFrameworkCore.Design;
|
|
using Microsoft.Extensions.Configuration;
|
|
using Microsoft.Extensions.Configuration.Json;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Text;
|
|
|
|
namespace Emergence.data.Factories;
|
|
|
|
public class AdminDbContextFactory : IDesignTimeDbContextFactory<AdminDbContext>
|
|
{
|
|
private readonly IConfiguration _configuration;
|
|
|
|
public AdminDbContextFactory()
|
|
{
|
|
|
|
}
|
|
|
|
public AdminDbContextFactory(IConfiguration configuration)
|
|
{
|
|
_configuration = configuration;
|
|
}
|
|
public AdminDbContext CreateDbContext(string[] args)
|
|
{
|
|
var dir = new DirectoryInfo(Environment.CurrentDirectory);
|
|
// throw new Exception($"{dir.Parent}\\Emergence.api\\appsettings.json");
|
|
ConfigurationManager config = new ConfigurationManager();
|
|
config.AddJsonFile($"{dir.Parent}\\Emergence.api\\appsettings.json");
|
|
var t = config.GetConnectionString("AdminConnection");
|
|
|
|
var optionsBuilder = new DbContextOptionsBuilder<AdminDbContext>();
|
|
optionsBuilder.UseSqlServer(t);
|
|
|
|
return new AdminDbContext(optionsBuilder.Options);
|
|
}
|
|
|
|
}
|