我有一个asp.net core库项目。
我想要添加连接字符串。但是这个项目中没有启动类。我需要将连接字符串放在哪里,如何获取它?
我有一个asp.net core库项目。
我想要添加连接字符串。但是这个项目中没有启动类。我需要将连接字符串放在哪里,如何获取它?
using Microsoft.Extensions.Configuration;
using System;
using System.IO;
// Add NuGet <package id="Microsoft.Extensions.Configuration" and
// <package id="Microsoft.Extensions.Configuration.Json"
// .NET Framework 4.x use the following path:
//.SetBasePath(Path.Combine(Directory.GetCurrentDirectory(), @"..\.."))
public class Program
{
static public IConfigurationRoot Configuration { get; set; }
public static void Main(string[] args = null)
{
var builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json");
Configuration = builder.Build();
Console.WriteLine($"option1 = {Configuration["option1"]}");
Console.WriteLine($"option2 = {Configuration["option2"]}");
Console.WriteLine(
$"option1 = {Configuration["subsection:suboption1"]}");
}
}
appsettings.json
文件中添加:{
"ConnectionStrings": {
"BloggingDatabase": "Server=(localdb)\\mssqllocaldb;Database=EFGetStarted.ConsoleApp.NewDb;Trusted_Connection=True;"
},
}
使用 Configuration.GetConnectionString("BloggingDatabase")
的代码可以访问它。
我还建议阅读关于连接字符串的dotnet core文档。
编辑:正如评论中提到的,在库代码中不要添加连接字符串和配置文件 - 请从控制台应用程序或Web应用程序中执行此操作!