Что я могу сделать для генерации БД в EF Code First? - PullRequest
2 голосов
/ 12 мая 2011

Я не планирую использовать EF Code First на веб-сайте MVC.Я хочу использовать его в приложении с клиентом WPF.

Проекты настроены как

  • ContactManager.Core // Содержит все
    Сущности (dll)
  • ContactManager.Data // Содержит DataContext и другие связанные с данными сервисы (dll)
  • ContactManager.Services // Business
    компоненты (dll)
  • ContactManager.Client //WPF
    Приложение

Я не могу сгенерировать SQLExpress или SQLCE 4.0 DB.Меня больше интересует компактная версия БД.Я не получаю никакой ошибки, за исключением того, что мои модульные тесты не пройдены, потому что он пытается подключить БД, которая не существует.

1 Ответ

1 голос
/ 22 октября 2011

Я нашел ответ 2 Опции:

Вариант 1:

В вашем DbContext вы указываете строки подключения в базовом конструкторе:

public class RecetteContext : DbContext
{
    public RecetteContext()
        :base("<YourConnectionString HERE>")
    {
    }

    public DbSet<Categorie> Categories { get; set; }
    public DbSet<Recette> Recettes { get; set; }

    }
}

Вариант 2:

Тот, который я использовал, дает вашей строке подключения имя в базовом конструкторе DbContext:

public RecetteContext()
    : base("RecettesDatabase")
{            }

И в вашем приложении.Config файл, в который вы добавляете ConnectionString с тем же именем:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <connectionStrings>
    <add name="RecettesDatabase"
         connectionString="Data Source=RecettesDB.sdf"
         providerName="System.Data.SqlServerCe.4.0"/>
  </connectionStrings>
</configuration>

Надеюсь, это решило вашу проблему!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...