【发布时间】:2022-01-28 02:34:01
【问题描述】:
我在尝试运行以下命令时遇到“值不能为空”错误 "dotnet ef 迁移添加 InitialCreate -p Persistence -s API/"
我不知道这是否重要,但我正在学习使用 .net 5.0 的课程并且我正在使用 .net 6.0;但我已经对项目进行了修改,因为它们已在课堂上被推荐以使其适用于 6.0。
我在这里附上了控制台输出的屏幕截图 -> 1
控制台输出的第一行似乎指向我的启动脚本
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new OpenApiInfo { Title = "WebAPIv5", Version = "v1" });
});
services.AddDbContext<DataContext>(opt =>
{
opt.UseSqlite(_config.GetConnectionString("Default Collection")); <-- this line is referenced by the output.
});
}
我不太确定这样做,VSCode 不会针对此代码抛出任何错误或警告。
TIA
【问题讨论】:
-
您确定您的
appsetings.json中存在名为Default Collection的配置吗? -
它确实出现在
appsettings.Development.json但不在appsettings.json我将添加它并再试一次 -
更新:我将默认集合添加到
appsettings.json,但我仍然收到该错误 ` "ConnectionStrings": { "Default Connection": "Data source = reacitivites.db" }, ` 是代码在我的appsettings.json文件中 -
您引用的是“默认集合”而不是“默认连接”
-
@Eldar,这正是问题所在。我更改了 Collection is Connection 并且问题已解决!