【问题标题】:mySQL Entity Framework 4.1 Code First ASP.NET connection problemmySQL Entity Framework 4.1 Code First ASP.NET 连接问题
【发布时间】:2011-08-26 18:12:52
【问题描述】:

我有一个带有以下 Web.config 条目的 ASP.NET webforms 应用程序,以便我可以连接到在本地主机上运行的 mySQL 数据库:

  <connectionStrings>
    <remove name="LocalMySqlServer"/>
    <!-- <add name="ApplicationServices" connectionString="server=127.0.0.1;uid=root;pwd=mypass;database=MyDB" providerName="MySql.Data.MySqlClient" /> -->
    <add name="ApplicationServices" connectionString="server=127.0.0.1;uid=root;pwd=mypass;database=MyDB" providerName="MySQL Data Provider" />
  </connectionStrings>

  <system.data>
    <DbProviderFactories>
      <add
          name="MySQL Data Provider"
          invariant="MySql.Data.MySqlClient"
          description=".Net Framework Data Provider for MySQL"
          type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data,
                  Version=6.4.3.0, Culture=neutral,
                  PublicKeyToken=c5687fc88969c44d"
        />
    </DbProviderFactories>
  </system.data>

用户可以使用“mypass”登录,但每当我实际连接到数据库时,我都会收到以下错误:

“在建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。找不到或无法访问服务器。请验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。 (提供者:命名管道提供者,错误:40 - 无法打开与 SQL Server 的连接)"

这表明我有一个混乱的配置字符串,因为正在使用命名管道对 SQL Server 进行 attmpt。

任何人都可以在这里为我指明解决方案的方向吗?

【问题讨论】:

    标签: mysql entity-framework code-first


    【解决方案1】:

    EF4.1 和 MySqlConnector 6.4.3 的连接字符串如下所示:

    <add name="myconnection" connectionString="metadata=res://*/MyDatabase.csdl| res://*/MyDatabase.ssdl|res://*/MyDatabase.msl; provider=MySql.Data.MySqlClient; provider connection string=&quot;server=servername;User Id=root;password=mypassword; Persist Security Info=True;database=mydatabase;Allow Zero Datetime=true;Convert Zero Datetime=true&quot;" providerName="System.Data.EntityClient" />

    【讨论】:

      猜你喜欢
      • 2011-08-01
      • 2023-04-02
      • 2012-05-15
      • 1970-01-01
      • 1970-01-01
      • 2023-04-11
      • 2011-09-19
      • 2011-08-01
      • 1970-01-01
      相关资源
      最近更新 更多