3

Моя проблема очень похожа на проблему this на SO, но не совсем.База данных Azure SQL работает при запуске локально, но не при публикации в Azure

Когда я подключаюсь к локальной базе данных azure локально, он работает отлично. Но когда я развертываю Azure, кажется, что он не может подключиться к базе данных. Сначала я использую код Entity Framework 5, и я также установил копию local: true в ссылке EF 5.

Это мои строки подключения:

<add name="api" connectionString=" 
    Server=tcp:[hidden].database.windows.net,1433;Database=API; 
    User ID=[hidden]@[hidden]; 
    Password=[hidden];Trusted_Connection=False; 
    Encrypt=True;Connection Timeout=30; 
    PersistSecurityInfo=True;" providerName="System.Data.SqlClient" /> 

    <add name="Membership" connectionString=" 
    Server=tcp:[hidden].database.windows.net,1433; 
    Database=Membership;User ID=[hidden]@[hidden]; 
    Password=[hidden];Trusted_Connection=False; 
    Encrypt=True;Connection Timeout=30; 
    PersistSecurityInfo=True;" providerName="System.Data.SqlClient"/> 

Я добавил

<customErrors mode="Off"/> 

в моем файле web.config, так что я мог видеть StackTrace, и это исключение я получил:

[TargetInvocationException: Exception has been thrown by the target of an invocation.] 
[InvalidOperationException: The ASP.NET Simple Membership database could not be initialized. For more information, please see http://go.microsoft.com/fwlink/?LinkId=256588] 
[ProviderIncompatibleException: An error occurred while getting provider information from the database. This can be caused by Entity Framework using an incorrect connection string. 

При чтении stacktrace уверен, что проблема в том, что я не могу инициализировать членство база данных. Это должно быть Azure проблемой развертывания, но я не могу понять его ..

EDIT:

В API-базы данных в настоящее время работают, но членство дает ту же ошибку. Я масштабировал веб-сайт, который будет зарезервирован вместо общего. Не знаю, может ли это повлиять.

ФИКСИРОВАННАЯ:

Ну это просто странно .. Внезапно веб-сайт имеет связь с обеими базами данных. Не делал ничего другого, изменяя сервер от общего до зарезервированного.

+0

Am при условии, что вы установили брандмауэр SQL Azure, чтобы позволить Windows, Azure Services? – JuneT

+0

Да, я установил его для Windows Azure Services :) –

ответ

0

Убедитесь, что ваш IP-адрес указан в списке разрешенных IP-адресов для базы данных.

+0

Ссылаясь на приведенный выше комментарий :) –

3

Проверьте правила IP сделана на Windows Azure портала и убедитесь, что ваш текущий IP-адрес находится в пределах диапазона вы позволили получить доступ к базе данных, работающей на платформе Windows Azure

+0

Я сделал. И чтобы проверить, я даже добавил ip-адрес из диапазона 0.0.0.0-255.255.255.255. Все еще не сработало :( –