C# 连接服务器名称

C# 连接服务器名称,c#,sql-server,C#,Sql Server,当我想在winform中添加新连接时,我使用了“.”作为服务器名。但我不知道为什么它不工作了。我应该像PC-PC一样键入完整的名称 当我使用“.”作为服务器名称时,它将不再显示连接到它们的数据库列表 现在我有两个问题 1-如何修复它,以便使用“.”作为服务器名称 2-如果我在创建安装文件后使用全名而不是“.”并让其他计算机使用此应用程序,是否有任何问题 任何帮助都将不胜感激 提前感谢连接字符串中的服务器名称是本地计算机的别名。您是否在运行sql server的同一台计算机上开发了应用程序,而现在

当我想在winform中添加新连接时,我使用了“.”作为服务器名。但我不知道为什么它不工作了。我应该像PC-PC一样键入完整的名称

当我使用“.”作为服务器名称时,它将不再显示连接到它们的数据库列表

现在我有两个问题

1-如何修复它,以便使用“.”作为服务器名称

2-如果我在创建安装文件后使用全名而不是“.”并让其他计算机使用此应用程序,是否有任何问题

任何帮助都将不胜感激


提前感谢

连接字符串中的
服务器名称是本地计算机的别名。您是否在运行sql server的同一台计算机上开发了应用程序,而现在将该应用程序部署到其他计算机时遇到了问题

在这种情况下,这是因为当部署到另一台计算机时,
名称指的是客户端的本地计算机。只要您想使用与运行程序的计算机不同的另一台计算机,您就需要指定一个名称或IP地址。

“”表示本地计算机。只有当sql server与您的应用程序位于同一台计算机上时,它才起作用。你知道吗?100次中有95次,如果这是真的,那你就大错特错了


如果它是一个桌面应用程序,那么首先就不应该使用完整的sql server版本。您应该使用进程内引擎,如SQLServerCompact、Sqlite甚至Access。如果是web应用程序或“企业”应用程序,则应假定您的客户将在单独的计算机上托管sql server,而不是在本地计算机上。在应用程序所在的同一台计算机上运行sql server几乎永远不会正确。

您的意思是我应该键入完整的服务器名称,如PC-PC\MYPC,以便它可以在另一台计算机上使用吗?
MYPC
应该这样做-只要其他计算机可以解析该名称。在命令提示下尝试ping MYPC。还要确保在sql server上启用了tcp/ip协议。默认情况下是禁用的。因此,当我在另一台计算机上安装了完整的计算机名时,它会自动解析该名称吗?对吗?我使用完整的sql server。你的意思是它会遇到桌面应用程序的问题吗?@aliprogrammer它不一定会遇到问题,尽管部署会更复杂。只是服务器引擎过于复杂,不合适。用户尤其不希望安装一个服务器进程,即使你的应用程序没有运行,它也会占用驻留内存和cpu时间。对于这种情况,进程内数据库引擎是一个更好的解决方案。感谢您的帮助。最后,如果我在生成安装文件后使用完整的服务器名称(如PC-PC\MYPC)并让它安装到其他计算机上并使用它,它会遇到任何问题吗?是的,这会导致问题,因为你的“PC-PC”不太可能在每次安装中都是相同的。这取决于你的应用程序是如何组合在一起的。就我个人而言,我希望为SQLServerCompactEdition重新编写,但我对您的情况了解得不够,无法将其作为真正的推荐。