У нас есть приложение ASP.NET(MVC) и мы используем Entity Framework 6 для подключения к нашим базам данных. DbContext построен стандартным способом и загружает строку подключения от нашего имени. Сгенерированный код выглядит следующим образом:
public partial class MyContext : DbContext
{
public MyContext(string connectionName)
: base("name=" + connectionName)
{
}
}
Мы устанавливаем строку подключения в локальном web.config также стандартным образом:
<configuration>
<connectionStrings>
<add name="DefaultConnection"
connectionString="metadata=...;provider connection string="...""
providerName="System.Data.EntityClient" />
Когда мы публикуем приложение для Azure, мы переходим к Azure Portal, затем к настройкам веб-приложения, а затем к списку строк подключения. Там мы добавляем строку подключения EF, которую мы использовали локально. Когда мы перезапускаем и посещаем приложение, мы получаем ошибку времени выполнения в зависимости от типа выбранной строки подключения.
Для типа Custom
мы получаем следующую ошибку времени выполнения:
Ключевое слово не поддерживается: 'источник данных'.
Для SQL Server
или SQL Database
мы получаем следующую ошибку во время выполнения:
Ключевое слово не поддерживается: "метаданные".
Это действительно кажется простой историей, поэтому мы задаемся вопросом, что происходит не так.