它使用.NET 2.2的核心和MySQL工作台我的第一次,
我试图建立一个非常基本的网站。
我跟着下面的Microsoft教程
之后,我加入了脚手架项目,我遵循的指示,打开了NuGet包管理器,并执行在CLI以下命令:
Add-Migration Initial
Update-Database
该Update-Database
命令提出了以下错误:
而与SQL Server建立连接时出现与网络相关的或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server配置为允许远程连接。 (provider:命名管道提供程序,error:40 - 无法打开到SQL Server的连接)
我用BlueHost的(共享主机)服务器的工作,我修改的权限,所以我可以远程连接到数据库(实际上我通过MySQL的工作台连接)
我试图改变ConnectionString,以下列内容:
"ConnectionStrings":
{
"Piano3Context": "Server=162.241.*.*;Database=PianoDB;User Id=omyUsrName;password=myPass;Trusted_Connection=True;MultipleActiveResultSets=true;"
}
可是我收到同样的错误。
如果任何其他代码将帮助请注意,我会发布。
你提到的教程是使用和SQL-Server中。为了连接一个MySQL服务器时,你需要不同的数据库提供商。您可以为MySQL安装Pomelo.EntityFrameworkCore.MySql
NuGet包。见providers page在微软文档。
之后,你需要将options.UseSqlServer
从教程options.UseMySql
作为对mysql providers project page描述的改变。
此外,这是如何设置MySQL的选项,你可以移动的配置字符串来配置和使用GetConnectionString方法。
services.AddDbContextPool<MvcMovieContext>(
options => options.UseMySql("Server=localhost;Database=ef;User=root;Password=123456;",
mySqlOptions =>
{
mySqlOptions.ServerVersion(new Version(5, 7, 17), ServerType.MySql); // replace with your Server Version and Type
}
));
我被你需要像他回答说使用MySQL和配置在启动@菲利普 - grathwohl挨打吧。
您可以使用此命令而不是它的支架和的DbContext生成一个命令的EF模型和上下文更改了启动和添加的NuGet包Pomelo.EntityFrameworkCore.MySql
后:
Scaffold-DbContext "Server=<ip>;Initial Catalog=PianoDB;Persist Security Info=False;User ID=<username>;Password=<password>;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;" Pomelo.EntityFrameworkCore.MySql -OutputDir Models -context Piano3Context -force
不要让我知道如果这最后的命令吐出任何错误。