我尝试使用Visual Studio 2019为MVC ASP.NET Core 3.10项目创建迁移。我收到两个错误:
1.访问Microsoft.Extensions.Hosting服务时出错。在没有应用程序服务提供程序的情况下继续。错误:无法解析JSON文件。
1.尚未为此DbContext配置任何数据库提供程序.可以通过重写DbContext.OnConfiguring方法或在应用程序服务提供程序上使用AddDbContext来配置提供程序.如果使用AddDbContext,则还要确保DbContext类型在其构造函数中接受DbContextOptions对象,并将其传递给DbContext得基构造函数.
我假设第一个是问题所在,因为我已经将DbContext设置为第二个问题。
到目前为止,我已经尝试过:
1.正在回滚到.NET Core 3.0
1.使用“InitialCreate”以外的名称进行迁移。
1.通过NuGet软件包管理器安装实体框架核心。设计,实体框架核心。SQlite,实体框架核心。SQlServer,实体框架核心。日志记录。调试,实体框架核心。工具
1.正在重新启动计算机并重试
1.四重检查Startup.cs是否添加了DbContext,以及DbContext是否将构造函数设置为在其构造函数中接受DbContextOptions,并将输入传递给基构造函数
我应该如何处理第一个错误?
8条答案
按热度按时间disbfnqx1#
原来我的appsettings.json缺少了一个右花括号。添加这个就解决了这个问题。
ecr0jaav2#
幸运的是,我遇到了这个线程,我踢自己没有采取错误消息字面上。
有很多提示... x1c 0d1x
错误没有弹出的一个原因是它只是一个警告。
您可以在Visual Studio中更改此行为
后藤工具-〉选项。
单击文本编辑器-〉JSON-〉高级。
在确认下,将
Show errors as warnings
变更为False您仍然会在控制台上看到相同的消息..但此更改会使错误变得更加严重,即存在问题。
kiayqfof3#
对我来说,问题是我的用户秘密
secrets.json
文件中有一个错字。我在属性值后面缺少一个逗号。作为参考,您可以在VS2019中编辑用户密码,方法是右键单击.NET Core项目并选择 * 管理用户密码 *。
gzszwxb44#
我在遵循This MVC指南时遇到了类似的问题。如果有人遇到类似的问题,请检查您的appsettings.json文件,确保您没有遗漏任何内容。(我所做的是从教程中复制代码,它破坏了我的代码,但当我键入它时,代码工作正常)
pokxtpni5#
这个错误可能是由于语法错误。在我的例子中,我在“AllowedHosts”后面漏掉了一个逗号(,):“*”在appsettings.json文件中。
Comma missing in the screenshot
的所有数据
添加逗号后,生成成功。添加以下屏幕截图以供参考。
Build Succeeded
vcirk6k66#
我在appsettings.json中遇到了一个问题。在JSON中,我忘记在AllowedHosts后面添加逗号。当我修复后,它就工作了。
aydmsdu97#
我在vscode上创建appsettings.Development.json时遇到此错误,但没有保存它。编译器不知道要使用哪个appsettings文件。当我保存appsettings.Development.json文件时,该错误得到了解决。
5f0d552i8#
奇怪,我有同样的问题和同样的警告,但所有的设置都很好。
我只是在Appsettings中剪切所有文本并再次粘贴,然后得到修复!