Так что недавно в проекте, над которым я работаю, мы изо всех сил пытались синхронизировать базу кода решения и связанную схему базы данных (Database = SQL Server 2008).
Изменения в базе данных происходят довольно регулярно (добавление столбцов, ограничений, отношений и т. Д.), И в результате люди нередко выполняют «Получить последнюю версию» из системы управления версиями и обнаруживают, что им также необходимо перестроить базу данных (а иногда они забудьте сделать последнее).
Мы не используем VSTS: Database Edition (DataDude), а стандартный проект базы данных Visual Studio со сценарием (пакетным файлом), который разрушает и воссоздает базу данных из сценариев T-SQL. Решением является решение .Net и ASP.net с LINQ to SQL, лежащим в основе ORM.
У кого-нибудь есть идеи о подходе (автоматическом или нет), который будет держать всех в курсе последней схемы базы данных?
Непрерывная интеграция с MSBuild - это вариант, но он помогает только улавливать любые зафиксированные критические изменения, но не совсем помогает в сценарии, который я выделил выше.
Мы используем Team Foundation Server, если это поможет ..