Как решить Предупреждение: Элемент entityFramework имеет недопустимый дочерний элемент поставщики. Список возможных ожидаемых элементов: «контексты»

Я играю с различными рабочими процессами EF. Вчера я сделал новый проект иEntity Framework 6 было первое предложение отNuget поэтому я решил попробовать, и это очень маленький проект, предназначенный исключительно для целей обучения, так что я думаю, что это будет хороший опыт, чтобы попробоватьEF 6 так как я работаю в основном сEf 5.

Моя заявка основана наCode First подход. Структура решения показана на экране печати:

ПроектCodeFirstClasses предназначен для хранения моих Entites. Для простоты и потому, что я следую учебному пособию, я использую только один класс, как вы можете видеть -Customer.cs, Там у меня есть:

public class RewardContext : DbContext
    { 
        //Specify the name of the base as Rewards
        public RewardContext() : base("Rewards")
        { 
        }

        //Create a database set for each data item
        public DbSet<Purchase> Purchases { get; set; }
        public DbSet<Customer> Customers { get; set; }

    }

И другие классы -Purchase а такжеCustomer которые тривиальны, поэтому я не буду вставлять их здесь.

Другой проект, как вы можете видеть,Windows Forms проект только с одной формой и кнопкой на нем. Наclick Событие кнопки У меня есть вся логика для добавления новых записей в мои жестко закодированные две сущности. Вот только часть этого:

    //some code...
    //Add the record and save it
    context.Customers.Add(newCustomer);
    context.Purchases.Add(newPurchase);
    context.SaveChanges();

    MessageBox.Show("Record Added!");

Пока ничем не отличается от того, к чему я привыкEF 5, Я могу построить проект, я могу запустить его, и все выполняется как положено. Однако я получаю это предупреждение из заголовка:

Warning 1 The element 'entityFramework' has invalid child element 'providers'. List of possible elements expected: 'contexts'. И хотя я использую в основномMS SQL Server Management Studio Я заметил, что не могу управлять своими подключениями / базами данных из IDE -Visual Studio 2012, но это не было проблемой сEF 5.

Мои исследования сузили возможный источник проблемы / решения для ручного измененияApp.config файл, но это область, где у меня не так много опыта, особенно когда IDE позаботился об этом, покаEF 6, Так что я выложу оба моиApp.config файлы для этого решения:

Тот изCodeFirstClasses проект:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    </providers>
  </entityFramework>
</configuration>

И из моегоTestCodeFirst проект:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
  </startup>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    </providers>
  </entityFramework>
</configuration>

И другое возможное решение, которое я нашел:updating the xsd for "validating" EF config section in web/app.config file to recognize newly added EF6 elements что я тоже не в курсе как именно это сделать.

Хотя когда я открываюMS SQL Server Management Studio Я вижу базу данных, созданную для этого приложения, записи сохраняются и, как правило, это работает, но все же я хотел бы устранить это предупреждение и узнать, как настроить свои приложения на основеEF 6 правильно.

Ответы на вопрос(2)

Ваш ответ на вопрос