重要提示:在人们指出常见原因之前,请注意,连接字符串在我的本地机器上的一个项目中有效,但连接到相同的本地实例和相同的数据库的另一个项目上无法使用。
我遇到了一个奇怪的问题。我有2个EF core项目。第一个项目中的连接字符串完美运行。我可以输入“dotnet ef database update”,然后它就会将我的迁移推送到本地数据库。我将下面的字符串粘贴到我的第二个项目中,但它却报错:
建立与SQL Server的连接时发生网络相关或特定于实例的错误。未找到服务器或无法访问。请验证实例名称是否正确,并检查是否已配置SQL Server以允许远程连接。(提供程序:命名管道提供程序,错误:40-无法打开到SQL Server的连接)
这是我的连接字符串:
Server=.;Database=RAMSAPPDB;Integrated Security=False;Persist Security Info=True;MultipleActiveResultSets=True;
我无法想到任何一个理由,为什么在我的另一个项目中使用这个连接字符串,试图添加到相同的数据库时,会抛出此错误。我尝试在推送第二个项目中的迁移之前删除RAMSAPPDB中的所有表,但它就是不起作用。
如果我注释掉“ConnectionString”,我会收到如下错误信息:
connectionString 不能为空
所以我知道它正在使用我appsettings.json中的连接字符串。
如果您有任何关于可能原因的想法,将不胜感激。谢谢。