Форум программистов, компьютерный форум, киберфорум
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
0 / 0 / 1
Регистрация: 24.12.2012
Сообщений: 5
1

При загрузке формы происходит заполнение DataSet, но заполнение происходит не вполне корректно

24.12.2012, 21:22. Показов 1721. Ответов 2
Метки нет (Все метки)

Есть строго типизированные DataSet и TableAdapter. При загрузке формы происходит заполнение DataSet, но заполнение происходит не вполне корректно.

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public partial class ActDiagnosis : Form
{
        void ActDiagnosis_Load(object sender, EventArgs e)
        {          
            Update();
        }
 
        void Update()
        {
               this.nameDevicesTableAdapter.Fill(this.accountingDevicesDataSet.NameDevices);
           
               //здесь происходит ошибка.
               this.actDiagnosisTableAdapter.Fill(this.accountingDevicesDataSet.ActDiagnosis); 
 
               //эти методы уже не выполняются
               this.listWorkTableAdapter.Fill(this.accountingDevicesDataSet.ListWork);          
               this.listMaterialsTableAdapter.Fill(this.accountingDevicesDataSet.ListMaterials);        
               this.workAdapter.Fill(accountingDevicesDataSet.Work);
               this.materialsTableAdapter.Fill(this.accountingDevicesDataSet.Materials);
        }
}
Расставив точки остановки выяснил, что метод actDiagnosisTableAdapter.Fill(this.accountingDevicesDataSet. ActDiagnosis) выполняется не до конца, причем не происходит никакой генерации ошибки, просто весь код идущий после этого метода игнорируется. После того как форма полностью загрузится (пропустив часть кода), нажимаю кнопку обновить (метод Update) и «чудесным» образом все работает корректно и дает нужный результат.

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
//метод строго типизированного ActDiagnosisTableAdapter 
public virtual int Fill(AccountingDevicesDataSet.ActDiagnosisDataTable dataTable) 
{
            this.Adapter.SelectCommand = this.CommandCollection[0];
            if ((this.ClearBeforeFill == true)) 
            {
                dataTable.Clear();
            }
 
            // здесь перестает выполняться код
            int returnValue = this.Adapter.Fill(dataTable); 
            return returnValue;
}
Кто-нибудь встречался с подобной проблемой? Заранее спасибо.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.12.2012, 21:22
Ответы с готовыми решениями:

Не происходит отрисовка пользовательского контрола при загрузке формы
using System; using System.Collections.Generic; using System.ComponentModel; using...

При создании отчета не происходит полное заполнение макетов по одному значению. В чем проблема?
всем доброго времени суток. необходима помощь. при создании отчета не происходит полное заполнение...

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

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

2
1445 / 1118 / 344
Регистрация: 11.04.2011
Сообщений: 2,615
25.12.2012, 02:53 2
Ваша СУБД не может выполнить ваш запрос. Если завернете данный Fill в try-catch, то увидите, какая именно ошибка возникает. Не видя, какой запрос выполняет ваш Fill, я не могу сказать, что за ошибка возникает.
1
0 / 0 / 1
Регистрация: 24.12.2012
Сообщений: 5
27.12.2012, 20:03  [ТС] 3
Странно, я думал, что компилятор перехватывает все ошибки без необходимости применения try\catch. Ошибка состояла в нарушении ограничений отношений, в результате дочерние таблицы заполнялись раньше родительских. Все решилось путем переставления местами методов Fill.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.12.2012, 20:03

При загрузке WoW с диска происходит ошибка
Всем привет))Раньше играл в вов и при установке все было нормально а сейчас захотел снова загрузить...

При загрузке рабочего стола происходит автозапуск браузера
При загрузке рабочего стола происходит запуск браузера (установленного по умолчанию) и открытие...

При включении компьютера происходит Проверка системы при загрузке
при включении компьютера происходит Проверка системы при загрузке, более подробно тут(...

При загрузке компьютера происходит автозагрузка сайта dinoraptzor.org
Здравствуйте, уважаемые форумчане! Надеюсь на вашу помощь в борьбе с такой вот проблемой:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru