Заполнение FarPoint Spread огромным количеством данных (проблема с 64-битными таблицами)
В C# 64-bit я пытаюсь заполнить таблицу FarPoint примерно 70000 строками. Все данные загружаются в таблицу после того, как они занимают 3-4 часа, что приводит к проблемам с производительностью.
В настоящее время я заполняю данные в электронную таблицу отдельными ячейками. Есть ли что-нибудь, что я могу сделать, чтобы увеличить производительность этой проблемы, с которой я сталкиваюсь??
Ниже приведен мой шаблон кода для заполнения таблицы отдельными ячейками.
Public void PopulateSpreadsheet()
{
FarPoint.Win.Spread.FpSpread SS;
SS.SuspendLayout();
int i = 0;
int Rows = 70000;
while( i < Rows)
{
SS.ActiveSheet.ActiveCell.Text = Data to populate;
}
SS.ResumeLayout();
}
Пожалуйста, покажите мне, как улучшить производительность. Любая помощь приветствуется! Заранее спасибо:)
2 ответа
Сначала я хранил данные прямо в электронной таблице, что занимало много времени. Чтобы решить эту проблему, я сначала сохранил свои данные в таблице данных, а затем сделал ее доступной в качестве источника данных для электронной таблицы.
Поместите данные в массив объектов и используйте свойство .SetArray. Это очень быстро, а также позволяет использовать разные типы данных в массиве.
Я часто использую это, особенно когда данные поступают из Sql.