C# “如何修复”;关键字不受支持";错误
我正在Ubuntu 16.04上使用.NETCore2.0、MicrosoftSQLServer和EntityFramework开发一个webapi。IDE是JetBrains Rider,我可以使用如下连接字符串将SQLServer数据库连接到IDE的数据库窗口:C# “如何修复”;关键字不受支持";错误,c#,sql-server,entity-framework,jdbc,ubuntu-16.04,C#,Sql Server,Entity Framework,Jdbc,Ubuntu 16.04,我正在Ubuntu 16.04上使用.NETCore2.0、MicrosoftSQLServer和EntityFramework开发一个webapi。IDE是JetBrains Rider,我可以使用如下连接字符串将SQLServer数据库连接到IDE的数据库窗口: jdbc:sqlserver://localhost:1433;数据库=TestDb;用户= 但是,当尝试使用从终端更新数据库时 “dotnet ef数据库更新-s../MyWeb/” 我得到以下错误: 关键字不受支持:“jdbc:
jdbc:sqlserver://localhost:1433;数据库=TestDb;用户=
但是,当尝试使用从终端更新数据库时
“dotnet ef数据库更新-s../MyWeb/”
我得到以下错误:
关键字不受支持:“jdbc:sqlserver://localhost:1433;数据库'
我花了好几个小时在谷歌上搜索并试图修复这个问题,但到目前为止还没有成功。有什么我遗漏的吗,比如对jdbc驱动程序的引用之类的吗?我今天以全新的思维找到了答案。在Windows下,我使用“Server=(localdb)\mssqllocaldb;Database=…”进行连接,但在Ubuntu1604下,我仅使用以下连接字符串进行连接: “服务器=tcp:localhost,1433;初始目录=MyDatabase;持久安全信息=True;j…”
我认为您应该使用“databaseName”而不是“database”,因为您真的在使用JDBC吗?您不应该使用普通的SQL Server连接字符串吗?C#、JDBC和实体框架的组合无法工作。JDBC是面向Java的(JetBrains Rider是用Java编写的!),而不是.NET/C。因此,如果使用C#编程,那么必须使用C#SQL Server连接字符串,而不是Java连接字符串。我(错误地)假设Rider提供的connectionstring是要使用的字符串(与Windows Visual Studio中的方式相同),但正如David和Mark指出的,这是不可能的。然而,公平地说,我确实尝试了在Windows中使用的相同连接字符串,但它们也失败了。今天,我有了一个全新的想法,我找到了答案和我错过的东西。考虑用你的解决方案来回答你的问题,它可能对其他人有所帮助。