dapper - Dapper 错误:“System.InvalidOperationException:'ConnectionString 属性尚未初始化。'”
问题描述
我正在学习如何使用 Dapper 的课程,但是我遇到了一个我无法找到解决方案的错误。
错误是"System.InvalidOperationException: 'The ConnectionString property has not been initialized.'"
我已经进行了一些调试,并注意到当我的初始化函数从 appsettings.json 文件中读取时,返回的“config”变量中似乎没有任何可用的内容。
这似乎也是在调用函数 CreateRepository 之后的情况,一个空字符串被发送到存储库。
如果有人能看到似乎有问题的地方,将不胜感激?
初始化- 返回配置的 0 个选项的对象
private static void Initialize()
{
var builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);
config = builder.Build();
}
Contact Repository - 在 ContactRepository 中设置断点时 - 传递的参数为 null
private static ContactRepository CreateRepository()
{
return new ContactRepository(config.GetConnectionString("DefaultConnection"));
}
应用设置
{
"ConnectionStrings": {
"DefaultConnection": "server=.\\SQLEXPRESS2014;database=ContactsDB;Trusted_Connection=Yes;"
}
}
解决方案
问题似乎是“AppSettings.json”文件没有被添加到 builder.SetBasePath 的位置,因此它返回 null。文件的手动复制和粘贴解决了这个问题
推荐阅读
- python-3.x - 无法根据熊猫数据框中的列对值进行排序
- python - 使用 py2neo 创建节点时出错:关键字不能是表达式
- aem - 使用数据源时在 AEM 中选择小部件项目的数据属性
- javascript - 错误类型错误:您在预期流的位置提供了“未定义”。您可以在 Angular 8 中提供 Observable、Promise、Array 或 Iterable
- java - Sonarqube:布尔文字不应该是多余的
- flutter - 如何从两个日期中获得更高的日期
- node.js - [未处理的承诺拒绝:SyntaxError:位置 7 处 JSON 中的意外标记 i]
- javascript - 为什么酶在一行上找到一个节点,然后在下一行找不到
- openlayers - OpenLayers v6.1.1 ol.Overlay 中的奇怪溢出行为
- http - Argo 工件给出错误“http:服务器向 HTTPS 客户端提供了 HTTP 响应”