Я новичок в ядре ASP.net и пытаюсь преобразовать мои существующие RESTful WepAPI в ASP.Net Core API (2.2).
Ниже представлена структура моего приложения: [WebAPI Methods] вызывает ->Вызовы [Уровень бизнес-логики (BLL)] -> [Уровень доступа к данным (DAL)].
Чтобы открыть соединение с БД из DAL, я вызываю статический метод другой библиотеки классов (Infrstructure.Data.dll).) и передавая имя строки подключения как Enum.Эта библиотека получает фактическую строку подключения из Web.Config webAPI с использованием следующего
string connString = ConfigurationManager.ConnectionStrings[GetDatabaseHint(dbSource)].ConnectionString;
и возвращает IDbConnection, который мой DAL использует для транзакции с БД.
Теперь я ищу похожие опции в основном веб-API ASP.net.
До сих пор я придумал следующее:
В автозагрузке.cs файл API, добавленные сервисы. AddSingleton (конфигурация);
В библиотеку классов Infrstructure.Data.dll добавлено
private static IConfiguration _config;
public ConnectionFactory(IConfiguration config)
{
_config = config;
}
public static IDbConnection GetConnection(DBSource dbSource)
{
string connString = _config.GetConnectionString(GetDatabaseHint(dbSource));
//... Code to create connection using DB Providers
return conn;
}
IConfiguration всегда имеет значение null здесь, в этом файле Infrstructure.Data.dll.
Пожалуйста, дайте мне знать, если это неправильный подход, и каким должен быть правильный способ достижения этого.