Строго типизированные наборы данных и изменения схемы - PullRequest
6 голосов
/ 04 августа 2010

У меня есть проект, который использует строго типизированные наборы данных.

Предположим, я хочу изменить схему базы данных базы данных, используемой этим приложением.У меня есть таблица с именем Country, и я хочу добавить новый столбец с именем «IsADemocracy» (это пример) типа данных SQL Server BIT.

Теперь, как мне обновить строго типизированный набор данных, чтобы я могиспользовать это новое поле в приложении?

Я попытался добавить столбец в таблицу Country в наборе данных, присвоил ему тип логического значения и сопоставил его свойство «Source» с «IsADemocracy».

Я могу получить доступ к полю в приложении, дать ему значение и т. Д., Но базовые запросы, сделанные адаптером таблицы, не были обновлены, чтобы отразить это изменение.Они такие же, какими были до того, как я добавил этот столбец в строго типизированный набор данных.Я надеялся, что того, что я сделал, будет достаточно, но, похоже, это не так.

Должен ли я каким-то образом регенерировать классы строго данных?Если да, то как и как это повлияет?

Я мог бы, вероятно, удалить таблицу Country в конструкторе набора данных и перетянуть ее из обозревателя серверов, но у меня есть запросы клиентов, и я не хочупотерять их.

Спасибо.

Ответы [ 2 ]

2 голосов
/ 31 мая 2011

Еще одно предложение - щелкните правой кнопкой мыши представление таблицы в конструкторе, то есть xsd, и используйте опцию Добавить, чтобы добавить столбец. Когда у вас есть столбец, вам нужно установить его свойства, так как по умолчанию новый столбец добавляется в виде строки. Выполнение этого означает, что вы сохраняете любые пользовательские запросы и т. Д., Которые были добавлены ранее.

Это позволяет добавлять столбцы, очевидно, что удаление будет более простым.

0 голосов
/ 04 августа 2010
  1. Сначала убедитесь, что у вас есть резервная копия

  2. Щелкните правой кнопкой мыши узел .xsd в обозревателе решений и выберите «Запустить пользовательский инструмент»

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

Это одна из веских причин, чтобы заполнить эти запросы из части основного файла 'main'.

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