Может ли Linq to Sql (L2S) обновить базу данных при добавлении класса / свойства в DBML? - PullRequest
0 голосов
/ 02 июля 2010

У меня есть небольшая база данных L2S, созданная с помощью команды L2S CreateDatabase. Когда я добавляю класс или свойство в DBML, база данных не обновляется автоматически. Я получаю ошибки типа «Таблица не найдена» во время выполнения.

Есть ли способ добавить новые таблицы и столбцы в базу данных?

Ответы [ 3 ]

1 голос
/ 02 июля 2010

Нет, LINQ to SQL не может обновить схему базы данных, чтобы отразить изменения, внесенные в DBML. Для этого вам придется либо воссоздать вашу БД с нуля (что, разумеется, LINQ to SQL не очень хорошо), либо использовать что-то вроде Wizardby для версии и обновить схему БД.

0 голосов
/ 03 июля 2010

Не из коробки, но есть сторонние инструменты, которые добавляют такую ​​функциональность.Взгляните на мои инструменты - Huagati DBML / EDMX Tools .

Надстройка может генерировать сценарии изменений для вас, а также есть компонент времени выполнения, который можно использовать в вашемприложение для обнаружения и генерации SQL-DDL для различий между моделью и базой данных.

0 голосов
/ 02 июля 2010

Нет, это не так. Вам необходимо обновить обозреватель сервера, а затем удалить измененную форму таблицы DBML, затем перетащить ее и нажать CTRL + S:}

...