c# - 将 Razor Pages 项目更新到 ASP.Net Core 5.0:为什么要依赖 MySQL 服务器版本?
问题描述
我的 Razor Pages 项目是实验性的。它的目标是使用 Visual Studio 的 MySQL 数据库。最初,我在 ASP .NET Core 2.2 上构建项目并成功升级到 ASP.Net Core 3.1。现在我正在尝试将项目迁移到 ASP .NET Core 5.0。按照Migrate from ASP.NET Core 3.1 to 5.0
中的建议更新项目后,我在“Startup.cs”文件中遇到以下错误:图 1
下图描述了错误代码:图 2
已安装的包列表:图 3
我试图做一些事情来修复错误:图 4
在图 4 中,您可以看到我要添加一个参数。我添加了一个,我将其设置为“null”。错误消除了,但问题仍然存在。项目编译成功后,我启动了项目,但是收到如下错误:图5
在图5中可以看到错误的来源是“Pamelo.EntityFrameworkCore.MySql”,消息是“The Server Version has未设置”。但是,为什么它没有被自动检测到?那么,如果第二个参数不设置为“null”,那么这个参数怎么设置呢?回答这个问题真的帮助了我以下文章:Pomelo.EntityFrameworkCore.MySql
现在“错误”行运行良好,如下所示
services.AddDbContext<ApplicationContext>(options => options.UseMySql(
connection,
new MySqlServerVersion(new Version(5, 7, 17))
));
该项目运作良好,但问题仍然存在。找不到服务器版本怎么办?为什么自动检测不像 ASP .NET Core 3.1 的早期包版本那样工作?为什么要依赖服务器版本?
回到图 1 - 3,我有一个问题:
我是否应该期望原始代码(自动检测)在 Pamelo.EntityFrameworkCore.MySql (v 5.0.0) 包发布版本发布后可以工作?
任何帮助,将不胜感激。
解决方案
推荐阅读
- debian - MariaDB的配置文件是什么?
- node.js - Nestjs 与 Fastify e2e 测试与开玩笑模拟不起作用
- python - Python 未来警告消息
- powershell - 如何从 $env:PSModulePath for PowerShell 中永久删除 UNC 路径?
- javascript - React 状态数组在渲染中给出空错误
- flutter - 导出 Flare 动画
- c# - Visual Studio 未将自定义用户控件添加到工具箱
- c# - 文本框中显示的 CMD 窗口的输出不会实时更新
- listview - Xamarin 中 StackLayout 内的 ListView 未根据列表视图项高度扩展
- python - 在python(jupyter notebook)中使用scrapy提取特定数据?