0

我正在 AppHarbor (http://test-1335.apphb.com) 上的测试站点上测试一些 MVC3 的东西。

我的数据库在 AppHarbor 上运行,并且在手动设置 MySQLConnection 时可以访问数据库。这可以通过单击我网站上的“测试”来测试。

        myConnectionString = "my connection string goes here...";

        try
        {
            conn = new MySql.Data.MySqlClient.MySqlConnection();
            conn.ConnectionString = myConnectionString;
            conn.Open();
            ViewBag.Response = "OK";
        }
        catch (MySql.Data.MySqlClient.MySqlException ex)
        {
            ViewBag.Response = ex.Message;
        }

通过实体框架访问数据库时,我收到 HTTP500 错误。这可以通过单击我网站上的“驱动程序”链接进行测试。

我在 AppHarbor 管理页面的错误页面中没有收到任何错误,并且在我的开发机器上也可以完美运行。

还有其他人在 AppHarbor 上收到 HTTP500 错误,或者有关如何获取有关该错误的更多详细信息的任何提示或想法?

4

2 回答 2

0

您的网站目前正在显示Unable to find the requested .Net Framework Data Provider. It may not be installed.。有关如何解决问题的详细信息,请参阅此问题。

于 2012-09-11T20:10:39.093 回答
0

我删除了 machine.config 中对 MySql.Data 的引用,并将下面的代码添加到 web.config。

<system.data>
<DbProviderFactories>
  <remove invariant="MySql.Data.MySqlClient" />
  <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.5.4.0, Culture=neutral,                    PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>

于 2012-09-12T09:49:48.490 回答