Когда вы добавляете столбец в таблицу БД, как вы получаете свое представление данных, чтобы показать изменение? - PullRequest
4 голосов
/ 08 февраля 2010

Я создал набор данных в проекте Visual Studio, который указывает на таблицу в моей базе данных а затем привязал к нему элемент управления datagridview.

Теперь я открываю базу данных и добавляю еще один столбец к таблице в базе данных. Затем я открываю набор данных и обновляю его конфигурацию, чтобы включить изменения.

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

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

Кто-нибудь имеет представление о том, что происходит?
Я пробовал это с несколькими проектами, как VS2008, так и 2010 бета, но не с другими языками, кроме C # tho.
Пока кажется, что единственное решение состоит в создании совершенно другого набора данных, но должен быть лучший способ.

Заранее спасибо

Ответы [ 3 ]

1 голос
/ 08 февраля 2010

Выполните следующие шаги: 1. Перейдите в набор данных и добавьте новый столбец. 2. Перейдите к источнику привязки данных и измените запрос. 3. Перейдите в таблицу данных и добавьте новый столбец

.

Я смоделировал тот же сценарий, что и вы, и он сработал.

0 голосов
/ 22 февраля 2010

Под папкой в ​​
"C: \ Users \ YOURUSERNAME \ AppData \ Local \ Microsoft \ VisualStudio \ 9.0 \ ProjectAssemblies"
Visual Studio имеет множество скомпилированных вещей, которые она использует для быстрого ознакомления. Они названы в честь некоторой схемы хеширования, поэтому мы не можем сказать, какая из них является скомпилированными настройками для нашей схемы с ошибочными таблицами.
1. Начнем с закрытия Visual Studio (я просто сделал это, чтобы быть в безопасности)
2. Удалите все папки в папке ProjectAssemblies.
3. Снова откройте Visual Studio
4. Восстановить решение
5. И СЕЙЧАС мы получаем правильные значения, когда добавляем столбцы в наше представление данных.

Уф! : D

0 голосов
/ 14 февраля 2010

Если вы установите для свойства GridView AutoGeneratedColumn значение true, он будет автоматически отражать столбец, но если вы установите его на ускорение, вы должны добавить разметку на странице aspx, например, между Tag

<asp:BoundField DataField="ColumnName" HeaderText="Header Text which you want to for table th " />

Надеюсь, это сработает для вас.

Спасибо

...