Обычно в ASP.NET Core строка подключения конфигурации может храниться в файле appsettings.json, переменной среды, хранилище секретов пользователя или другом источнике конфигурации. См. Раздел Конфигурация
{
"ConnectionStrings": {
"BloggingDatabase": "Server= (localdb)\\mssqllocaldb;Database=EFGetStarted.ConsoleApp.NewDb;Trusted_Connection=True;"
},}
Контекст обычно настраивается в Startup.cs со строкой соединения, считываемой из конфигурации. Обратите внимание, что метод GetConnectionString () ищет значение конфигурации, ключом которого является ConnectionStrings :. Вам необходимо импортировать пространство имен Microsoft.Extensions.Configuration , чтобы использовать этот метод расширения.
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<BloggingContext>(options =>
options.UseSqlServer(Configuration.GetConnectionString("BloggingDatabase")));
}
Здесь - более подробная информация.
Для оконных форм оно должно быть разным. Вы можете добавить и файл конфигурации в свой проект для хранения строки подключения. Строка подключения должна быть добавлена в файл App.config вашего приложения (Web.config, если вы используете ASP.NET)
<configuration>
<connectionStrings>
<add name="BloggingDatabase"
connectionString="Server=(localdb)\mssqllocaldb;Database=Blogging;Trusted_Connection=True;" />
</connectionStrings>
</configuration>
Параметр providerName не требуется для строк подключения EF Core, хранящихся в App.config, поскольку поставщик базы данных настроен с помощью кода.
Затем можно прочитать строку подключения с помощью API-интерфейса ConfigurationManager в вашем контексте. Метод OnConfiguring. Вам может потребоваться добавить ссылку на сборку инфраструктуры System.Configuration, чтобы иметь возможность использовать этот API.
public class BloggingContext : DbContext
{
public DbSet<Blog> Blogs { get; set; }
public DbSet<Post> Posts { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder
optionsBuilder)
{
optionsBuilder.UseSqlServer(ConfigurationManager.ConnectionStrings["BloggingDatabase"].ConnectionString);
}
}