Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# “如何修复”;关键字不受支持";错误_C#_Sql Server_Entity Framework_Jdbc_Ubuntu 16.04 - Fatal编程技术网

C# “如何修复”;关键字不受支持";错误

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:

我正在Ubuntu 16.04上使用.NETCore2.0、MicrosoftSQLServer和EntityFramework开发一个webapi。IDE是JetBrains Rider,我可以使用如下连接字符串将SQLServer数据库连接到IDE的数据库窗口:

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中使用的相同连接字符串,但它们也失败了。今天,我有了一个全新的想法,我找到了答案和我错过的东西。考虑用你的解决方案来回答你的问题,它可能对其他人有所帮助。