C #, Winforms, Dataset, переключение между методами TableAdapters.Fill - PullRequest
0 голосов
/ 23 ноября 2018

У меня есть общий набор данных, в котором есть несколько TableAdapter и DataTable.Gridcontrols (5-6) показывает готовый источник данных.Есть две большие таблицы: Входящие (16000 записей) и Исходящие (6000 записей).При переключении

view_all_outbox_doctableadapter.Fill(this.delodataset.View_all_outbox_doc);
view_all_inbox_doctableadapter.file(this.delodataset.View_all_inbox_doc);

Из входящих документов программа зависает на 5-15 секунд, в загруженное время даже больше.Я заметил, что при переключении с больших записей на маленькие записи программа зависает, а наоборот нет.Я понял, что загрузка TableAdapter сначала освобождает загруженную память, а затем загружает новые данные.Я даже пытался использовать код, который вызывает время выполнения другого набора данных:

String connectionString = Settings.Default.deloconnectionstring;
String storedprocedurename = "Getoutboxdoc ";
DataSet ds = new DataSet ("Outbox");
Try
{
    using (SqlConnection Sqlcon = new SqlConnection (connectionString))
    {
        Sqlcon.Open();
        SqlCommand command = new SqlCommand (StoredProcedureName, Sqlcon);
        command.CommandType = System.Data.CommandType.StoredProcedure;
        command.CommandTimeout = 1000;
        SqlDataAdapter dataAdapter = new SqlDataAdapter();
        DataAdapter.SelectCommand = command;
        DataAdapter.Fill(DS);
        Gridcontrol5.DataSource = ds.Tables[0];
    }
}

Результаты не изменились.Что нужно сделать, чтобы программа не зависла.

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