Приложение AppHarbor MVC3 выдает ошибку HTTP500

Я тестирую некоторые вещи MVC3 на своем тестовом сайте в AppHarbor (http://test-1335.apphb.com).

Моя база данных работает в 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;
        }

При доступе к базе данных через Entity Framework я получаю ошибку HTTP500. Это можно проверить, нажав на ссылку «Драйверы» на моем веб-сайте.

Я не получаю никаких ошибок на странице «Ошибки» на странице администрирования AppHarbor, и все также отлично работает на моем компьютере для разработки.

Кто-нибудь еще получил ошибку HTTP500 в AppHarbor или какие-либо советы или идеи о том, как получить более подробную информацию об ошибке?


person Koen Steurs    schedule 11.09.2012    source источник
comment
500 — это внутренняя ошибка сервера, это может означать любую ошибку кода, которая приводит к сбою при загрузке страницы. Если вы используете IE для просмотра страницы, попробуйте отключить дружественное сообщение об ошибке в «Свойства обозревателя» › «Дополнительно».   -  person Raptor    schedule 11.09.2012
comment
Не могли бы вы попытаться удаленно отладить свое приложение и получить место, где возникает исключение?   -  person Kirill Bestemyanov    schedule 11.09.2012
comment
Я получаю следующее сообщение при отключении дружественных сообщений об ошибках в IE: Страница не может быть отображена, потому что произошла внутренняя ошибка сервера.   -  person Koen Steurs    schedule 11.09.2012
comment
Удаленная отладка приложения невозможна, поскольку оно выполняется на серверах хостинг-провайдера AppHarbor.   -  person Koen Steurs    schedule 11.09.2012


Ответы (2)


Ваш сайт в настоящее время показывает Unable to find the requested .Net Framework Data Provider. It may not be installed.. См. этот вопрос для получения подробной информации о том, как решить проблему.

person friism    schedule 11.09.2012

Я удалил ссылку на MySql.Data в файле machine.config и добавил приведенный ниже код в файл 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>

person Koen Steurs    schedule 12.09.2012