Rya*_*yan 5 c# asp.net .net-core
我有一个 .NET Standard 库,其中包含我所有的 SQL 相关代码。它甚至包含一些创建 SQL 连接的代码。该库需要从应用程序配置文件中读取以获取 SQL 连接字符串。图书馆正在使用典型的ConfigurationManager.ConnectionStrings方法。
现在,我在 .NET Core ASP.NET Web Api 2 应用程序中使用了这个库。我已经在这个应用程序的appsettings.json文件中定义了我的连接字符串。连接字符串位于ConnectionStrings具有给定名称的字段中,该名称与我上面的 DLL 查找的名称相匹配。
这似乎不起作用。我的 DLL 从顶部开始,没有从配置文件中找到连接字符串。
难道ConfigurationManager不是一起工作appsettings.json?如果没有,我应该如何解决这个问题?
ConfigurationManager 不适用于 appsettings.json,您必须使用 ConfigurationBuilder 类代替 ConfigurationManager 在startup.cs 文件中添加 json 文件。
1.将以下代码放入appsettings.json中
"ConnectionStrings": {
"connectionstring ": "Data Source=Demo_server\\SQLEXPRESS01;Initial Catalog=Demo_DB;Persist Security Info=True; User ID=sa;Password=Password@123" }
Run Code Online (Sandbox Code Playgroud)
2.将以下代码放入startup.cs中。
public Startup(IHostingEnvironment env)
{
Configuration = new ConfigurationBuilder().AddJsonFile("appSettings.json").Build();
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
ConnectionString = Configuration["ConnectionStrings:connectionstring"]; // Get Connection String from Appsetting.json
}
Run Code Online (Sandbox Code Playgroud)
3.创建ConnectionStringUtility类以从Startup.cs文件中获取连接字符串。
public class ConnectionStringUtility
{
public static string GetConnectionString()
{
return Startup.ConnectionString;
}
}
Run Code Online (Sandbox Code Playgroud)
4.在连接变量中获取连接字符串,并在任何需要的地方使用该连接字符串。
public string Connectionstring = ConnectionStringUtility.GetConnectionString();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6407 次 |
| 最近记录: |