代码之家  ›  专栏  ›  技术社区  ›  Jonathan

无法连接到LINQ to SQL网页上的SQL server

  •  2
  • Jonathan  · 技术社区  · 14 年前

    在prod服务器上,我有两个SQL server实例,SQL server 2000是默认实例,还有一个额外的命名实例-SQLEXPRESS2008。在我的web项目中,我需要连接到默认的SQL 2000实例。

    我在Visual Studio 2008中使用LINQ to SQL。

    在Visual Studio的服务器资源管理器中,我可以创建到DB的连接、查看所有表、正确生成LINQ to SQL类等。

    在管理工作室,我可以连接到数据库,查看所有内容,编辑等。

    但是,当我尝试运行我的web项目代码时,我会得到:

    网络相关或 在 建立与SQL的连接 服务器。找不到服务器或 无法访问。确认 实例名正确,并且 服务器配置为允许远程 连接。(提供程序:命名管道 提供程序,错误:40-无法打开 连接到SQL Server)

    web项目中的连接字符串如下所示:

    <add name="myConnectionString" connectionString="Data Source=myServer.com;Initial Catalog=myDB;Persist Security Info=True;User ID=sa;Password=XXXXX" providerName="System.Data.SqlClient" />
    

    (出于绝望,我正在测试sa帐户)。

    我有其他的web项目运行良好并利用了DB,但这是唯一一个使用LINQ to SQL类的项目(如果这很重要的话)

    乐于助人

    乔纳森

    2 回复  |  直到 14 年前
        1
  •  1
  •   Marc Gravell    14 年前

    如果web服务器与SQL服务器相同,只需使用 . 作为服务器名;简单得多。

    如果网络服务器 与SQL server相同,确保这些服务器之间通过防火墙等有视线。还确保服务器名称解析(在许多方面,如果无法保证名称解析,则在连接字符串中使用IP地址更简单)。

        2
  •  1
  •   Laramie    14 年前

    这可能和发生在我身上的事情一样,也是LINQ to SQL最烦人的事情之一。每次对dbml进行更改时,它都会还原为VS中服务器资源管理器使用的连接。必须右键单击设计图面,然后手动将连接更改回“myConnectionString”,重新编译并运行。