Строка соединения с именем «MyApplicationEntities» не может быть найдена в файле конфигурации приложения

connection-string database-migration entity-framework-4.3

53790 просмотра

8 ответа

Я просто устанавливаю EF 4.3 и пытаюсь обновить свой проект с помощью миграции. однако у меня возникают проблемы с попыткой выполнить add-migration initialмой проект через консоль диспетчера пакетов.

Сейчас он бросает любое исключение No connection string named 'MyApplicationEntities' could be found in the application config file.

Теперь у моей конфигурации есть все

<connectionStrings>
<add name="MyApplicationEntities" 
     connectionString="metadata=res://*/DataModel.csdl|res://*/DataModel.ssdl|res://*/DataModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=localhost;initial catalog=MyApplicationEntitiesDB;integrated security=True;multipleactiveresultsets=True;App=EntityFramework&quot;" 
     providerName="System.Data.EntityClient" />

Я не уверен, в чем проблема: это ошибка в EF 4.3 или что-то, что я не делаю правильно.

Я думал, что этот пост решил проблему, но не совсем.

Любой получил ответ.

Цените Сандж.

Автор: Sanj Источник Размещён: 17.05.2019 04:01

Ответы (8)


98 плюса

Решение

Ах, понял это случайно.

Мне пришлось удалить

public MasterEntities()
    : base("name=MyApplicationEntities")
    //      ^^^^^
{
}

в

public MasterEntities()
    : base("MyApplicationEntities")
{
}

EF 4.3 не нравится, когда вызывается строка подключения name=xxxxx

Автор: Sanj Размещён: 11.06.2012 11:42

35 плюса

Решение, как Сандж отметил, что вам нужно скопировать строку подключения из App.config проекта базы данных в веб-проект web.config веб-проекта. Я не уверен, почему вышеупомянутый ответ отмечен как правильный. Я добавляю это как ответ вместо комментария, чтобы будущие читатели это заметили.

Автор: Bill Размещён: 06.05.2013 02:50

28 плюса

У меня была такая же ошибка, но у меня уже был файл web.config с правильным именем строки подключения и правильно объявлен DbContext. Тем не менее, я заметил, что когда я запускал add-migration с -Verbose, он указывал «Startup Project» как другой проект, чем тот, который содержит мой контекст. Поэтому я меняю Startup Project, повторно запускаю add-migration, и все работает!

Автор: Phil Размещён: 28.01.2014 07:32

8 плюса

Убедитесь, что ваш файл конфигурации проекта statup имеет строку подключения. Эта ссылка может вам помочь.

Автор: Santosh Panigrahy Размещён: 16.06.2015 06:09

6 плюса

У меня также была эта проблема и

  1. Выбор правильного StartUp project.
  2. Перезапуск команды в консоли диспетчера пакетов.

Все сложилось так, как ожидалось.

Автор: xibabababa Размещён: 18.05.2015 08:50

2 плюса

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

Автор: Dhanuka777 Размещён: 08.11.2013 07:57

0 плюса

 1. ctor => Context

   public MasterEntities()
    : base("ConnectionStringName")
{
}

 2. config file

   <add name="ConnectionStringName"
      connectionString="Data Source=.;Initial Catalog=DatabaseName;User Id=sa; Password=YourPass;"
      providerName ="System.Data.SqlClient" />

 3. in Sulation Exporer right click the project and select 'Set as
    startup project'

 4. in PackageManagerConsole Change Default Project to Your Project of
    context class.

 5. then:

add-migration new

или добавили ConnectionString в файл конфигурации работающего проекта.

Автор: MohammadSoori Размещён: 21.10.2017 01:01

0 плюса

Для тех, кто прибывает сюда, потому что они получают эту ошибку при работе с WPF в Visual Studio, пожалуйста, взгляните на это сообщение: MVVM останавливает возможность Visual Studio Designer показывать xaml?

Автор: Telos Размещён: 17.10.2018 04:55
Вопросы из категории :
32x32