![]() |
|
Модераторы: gambit |
![]()
|
|
| Fyrklod |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 141 Регистрация: 17.10.2006 Репутация: нет Всего: 1 |
щас попытаюсь объяснить в чем дело...
в Програме у меня есть такая ситуация происходит замена ПК... есть талица хранящая просто кабинеты(пусть в ней есть уже 303 кабинет и 904)(назавем эту таблицу PLACE) и таблица хранящая данные по ПК поля в ней ПК, место установки (кабинет) (DatePC).... (пусть в нее забито ws4 в 303, ws5 B 904)... меняю положение компа... переношу ws4 B 808 т.к. в таблице с кабинетами нет 808, то разумеется ИНСЕРТ добавляю его в Place, а потом АДЕЙТ поля хранящего даные о ПК ws4 в DatePC... а если бы я ws4 переносил бы 904 тогда произошел бы просто апдейт DatePC... реализовываю я это так
и происходит глюк.... в DataGrid 'e уничтожаются заранее созданные мною колумнсы.... на что указывает
ну кроме этой части указывает на удаление тот факт что до выполнения кода TextHeder 'ы это грида у меня русские, а после выполнения реальные названия полей с моей базы (MySQL) ![]() В чем может быть проблема? Это сообщение отредактировал(а) Fyrklod - 16.8.2007, 15:04 --------------------
Зачем компьютеры пищат, когда нажимаешь сразу много клавиш? Чтобы будить уснувших на клавиатуре программистов! |
||||
|
|||||
| Experimenter |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 430 Регистрация: 8.5.2007 Где: Уфа Репутация: 3 Всего: 17 |
Дык у тебя в catch вываливается, что ж ты ошибку не отобразишь? Может, в ней все и дело!
-------------------- public Zlo FromTwoEvilsChooseSmaller(Zlo zlo1, Zlo zlo2){ if(zlo1 < zlo2) return zlo1; else if(zlo1 > zlo2) return zlo2; else throw new Exception("Kill yourself by the wall"); } |
|||
|
||||
| Fyrklod |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 141 Регистрация: 17.10.2006 Репутация: нет Всего: 1 |
я проверял случай когда заполнение по try 'ю проходило и когда по catch' y... результат тот же... когда в try заходил, он нормально делал вставку и замену и выходил из него.... на ошибку никакого намека, а название колонок уже менялись, точнее просто мои колумнсы удалялись
--------------------
Зачем компьютеры пищат, когда нажимаешь сразу много клавиш? Чтобы будить уснувших на клавиатуре программистов! |
|||
|
||||
| Idsa |
|
||||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2086 Регистрация: 5.12.2006 Где: Томск Репутация: 15 Всего: 62 |
Колонки не удаляются. Если в таблице есть колонка с именем столбца БД (или алиаса), то данные загружаются именно в нее, при этом меняется Caption на то самое имя столбца (или алиаса). Выхода 2: 1) быстрый и 2) правильный. 1) Быстрый - поменять вручную после Fill() свойства Caption всех столбцов. Однако, такой подход не является правильным, потому что может повлечь за собой проблемы при поддержке и расширении проекта.
2) Воспользуемся mapping'ом (aliasing'ом): Необходимо добавить using System.Data.Common.
Данный код необходимо вставить до заполнения таблицы, т. к. адаптер при выполнении метода Fill() будет учитывать созданные нами алиасы. Это сообщение отредактировал(а) Idsa - 17.8.2007, 19:25 |
||||||
|
|||||||
| Fyrklod |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 141 Регистрация: 17.10.2006 Репутация: нет Всего: 1 |
Объясни тогда почему на
до кода никаких ошибок... показывает что Columns 'ы с именем NUM и Place и DateSb существуют, а после кода кричит что таких нет....... Это сообщение отредактировал(а) Fyrklod - 17.8.2007, 22:35 --------------------
Зачем компьютеры пищат, когда нажимаешь сразу много клавиш? Чтобы будить уснувших на клавиатуре программистов! |
||||
|
|||||
| Idsa |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2086 Регистрация: 5.12.2006 Где: Томск Репутация: 15 Всего: 62 |
Я не могу ручаться за твой код. Может, ты действительно где-нибудь удаляешь колонки. Выше я всего лишь объяснил наиболее вероятную причину подобного поведения.
|
|||
|
||||
| Fyrklod |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 141 Регистрация: 17.10.2006 Репутация: нет Всего: 1 |
Все, всем спасибо кто пытался помчь... проблема решена, еще раз спасибо и топик.Close();
--------------------
Зачем компьютеры пищат, когда нажимаешь сразу много клавиш? Чтобы будить уснувших на клавиатуре программистов! |
|||
|
||||
| Experimenter |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 430 Регистрация: 8.5.2007 Где: Уфа Репутация: 3 Всего: 17 |
А как решил-то, если не секрет?
-------------------- public Zlo FromTwoEvilsChooseSmaller(Zlo zlo1, Zlo zlo2){ if(zlo1 < zlo2) return zlo1; else if(zlo1 > zlo2) return zlo2; else throw new Exception("Kill yourself by the wall"); } |
|||
|
||||
| Fyrklod |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 141 Регистрация: 17.10.2006 Репутация: нет Всего: 1 |
да не такая уж и проблема оказалась
в try у меня есть
ну а после этой строки в реальном коде (а не в том что я дал.. по причине чтобы некоторые строки не мешали) шел метод обновления БД в которой тоже была строка
ну в общем и получалось что полсе первой DGV.DataSource = data; и проходил сбой в программе... В отладчике заметил после какой строки происходило удаление колумнсов, закоментировал ее и увидел нормальный результат программы... вот и удалил... все решение проблемы --------------------
Зачем компьютеры пищат, когда нажимаешь сразу много клавиш? Чтобы будить уснувших на клавиатуре программистов! |
||||
|
|||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Базы данных под .NET | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |