在ASP.NET Core 3.1中,可以使用Configuration API来读取appsettings.json中的连接字符串。下面是一个示例解决方法:
首先,确保在Startup.cs文件的ConfigureServices方法中添加以下代码:
services.AddDbContext(options =>
options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
这将添加一个名为DefaultConnection的连接字符串,并将其配置为使用SQL Server提供程序。
接下来,在appsettings.json文件中,确保有一个名为DefaultConnection的连接字符串,如下所示:
{
"ConnectionStrings": {
"DefaultConnection": "your_connection_string_here"
}
}
确保将your_connection_string_here替换为您实际的连接字符串。
最后,在需要访问连接字符串的地方,您可以通过使用IOptions接口来注入连接字符串。例如,您可以在控制器的构造函数中注入连接字符串,如下所示:
private readonly string _connectionString;
public HomeController(IOptions connectionStrings)
{
_connectionString = connectionStrings.Value.DefaultConnection;
}
这里的ConnectionStringsOptions是一个包含DefaultConnection属性的类,您可以在Startup.cs文件中创建该类,并将其添加到服务容器中,如下所示:
public class ConnectionStringsOptions
{
public string DefaultConnection { get; set; }
}
// 在Startup.cs的ConfigureServices方法中添加以下代码
services.Configure(Configuration.GetSection("ConnectionStrings"));
这样,您就可以在控制器中访问连接字符串并使用它来建立数据库连接。
请确保按照上述步骤配置和使用连接字符串,以便在ASP.NET Core 3.1中正确读取appsettings.json中的连接字符串。