Value cannot be null (Parameter 'connectionString') .NET 6
回答 2
浏览 4425
2021-12-29
我使用 .Net 6,当我想运行我的第一次迁移时,我收到此错误:
Value cannot be null. (Parameter 'connectionString')
我的appsettings.json
:
{
"ConnectionStrings": {
"DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=Solardb;integrated security=SSPI"
},
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*"
}
这是我在program.cs
中的Configuration
方法:
builder.Services.AddDbContext<SolarDbContext>(options =>
options.UseSqlServer(builder.Configuration.GetConnectionString("ConnectionStrings")));
您尝试获取的连接字符串称为“DefaultConnection”,而不是“ConnectionsStrings”。
- David 2021-12-29
您似乎使用 C#。该语言与 C 语言非常不同。
- Gerhardh 2021-12-29
2 个回答
#1楼
已采纳
得票数 6
你不需要得到整个部分。 GetConnectionString 已经做到了。您只需要输入连接字符串的名称
builder.Services.AddDbContext<SolarDbContext>(options =>
options.UseSqlServer(builder.Configuration.GetConnectionString("DefaultConnection")));
#2楼
得票数 0
我的appsettings.json
"ConnectionStrings": {
"DefaulConnection": "Data source=skinet.db"}
我在解决问题时使用了一个更简单的结构。 startup.cs
:
services.AddDbContext<StoreContext>(x =>
x.UseSqlite(_config.GetConnectionString("DefaultConnection")));
写下面而不是上面的可能会解决问题。
services.AddDbContext<StoreContext>(x =>
x.UseSqlite(("DefaultConnection")));