используя EF4.1, возможно ли добавить ограничения для базы данных, сгенерированной CF, во время Seed ()? - PullRequest
0 голосов
/ 16 ноября 2011

С нетерпением ожидая прямой поддержки уникальных ограничений в CodeFirst EF (в отличие от SQL2k8R2), в настоящее время я запускаю сценарий SQL, который выполняет ALTER TABLE ADD CONSTRAINT после того, как CF создаст для меня БД.

Я быЯ хотел бы каким-то образом программно добавить эти УНИКАЛЬНЫЕ ограничения сразу после того, как CF создаст схему, может быть, через ALTER TABLE?

Я думаю о том, возможно ли сделать это как-то в переопределении Seed ()?

Возможно?

1 Ответ

3 голосов
/ 16 ноября 2011

Вы можете установить Инициализатор базы данных для создания ограничений.

public class MyInitializer : CreateDatabaseIfNotExists<MyDbContext>
{
    protected override void Seed(MyDbContext context)
    {
        //your logic here
        context.Database.ExecuteSqlCommand("ALTER TABLE customer ADD CONSTRAINT con_first UNIQUE (first_name);");    
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...