Net Core Connection String Dapper视觉工作室2017
我试图在我的.Net Core应用程序中设置连接字符串,但我一直收到错误:
System.NullReferenceException:’对象引用未设置为对象的实例。’
我尝试将以下内容添加到appsettings.json :
"ConnectionStrings": { "Analysis": "Server=DESKTOP-MYSERVER;Database=MYDATABASE;User Id=sa; Password=Password123;Provider=System.Data.SqlClient;Trusted_Connection=True;MultipleActiveResultSets=true;Pooling=false;" }
我也试过像以前那样使用web.config .Net Core:
然后在c#我有:
public List ReadAll() { var data = new List(); using (IDbConnection db = new SqlConnection(ConfigurationManager.ConnectionStrings["Analysis"].ConnectionString)) { data = db.Query("select * from testTable").ToList(); } return data; }
两种方式都给我例外:
System.NullReferenceException:’对象引用未设置为对象的实例。’
我使用了以下资源:
.Net CORE Dapper连接字符串?
https://docs.microsoft.com/en-us/aspnet/core/data/ef-mvc/intro
从App.config获取连接字符串
但我错过了一些东西。 我只设置了一次连接字符串,它不在.Net Core中,因此对其他人来说显而易见。
如果您正在使用appsettings.json,请创建一个简单的POCO类来为您的连接字符串配置建模,如下所示:
public class ConnectionConfig { public string Analysis {get;set;} }
在Startup.cs中的ConfigureServices方法中添加此行
services.Configure(Configuration.GetSection("ConnectionStrings"));
数据服务类
class YourClass{ private string _connectionString; YourClass(string connectionString){ _connectionString = connectionString; } //Your implementation public List ReadAll() { var data = new List (); using (IDbConnection db = new SqlConnection(_connectionString) { data = db.Query ("select * from testTable").ToList(); } return data; } }
在控制器构造函数中注入IOptions
。
class YourController : Controller{ YourClass _testing; YourController(IOptions connectionConfig){ var connection = connectionConfig.Value; string connectionString = connection.Analysis; _testing = new YourClass(connectionString ); } public IActionResult Index() { var testingData = _testing.ReadAll(); return View(); } }
- 在没有Microsoft.Office.Interop的情况下,将.NET doc和docx格式转换为.NET Core中的PDF
- AWS Lambda和.NET Core – 使用Linux运行时?
- 反序列化包含单个或一组对象的JSON
- 如何在.Net Core中不使用第三方记录器的情况下登录文件?
- 使用Postman上传ASP核心WebApi测试文件
- 将Env Conn字符串注入.NET Core 2.0 w / EF Core DbContext中的不同类lib比启动prj并实现IDesignTimeDbContextFactory
- 将客户端证书添加到.net核心Httpclient
- 在Entity Framework Core中使用两列的一对多关系
- 我应该在哪里开始ASP.NET Core中的持久后台任务?