2013-07-01 2 views
1

У меня есть источник данных с 1,4 + миллионами строк в нем и растет.Каков самый быстрый способ загрузки большого набора данных в GridView?

Мы делаем пользователей, добавляя фильтры для вырезания названных данных вниз, но вы по-прежнему смотрите 43 000 +/- до 100 000 +/- строк за раз.

Прежде чем кто-нибудь скажет, никто не может смотреть на это много строк, они экспортируются в книгу Excel для расчетов на их основе.

Я загружая результат, как следует в GridView из файла CSV, который возвращается:

Object result = URIService.data; 
CSVReader csvReader = new CSVReader(result); 
DataTable dataTable = csvReader.CreateDataTable(true, true); 

If(dataTable != null) 
{ 
    gridView1.BeginUpdate(); 
    gridView1.DataSource = dataTable; 
    gridView1.DataBind() 
    gridView1.EndUpdate(); 
} 
Else 
{ 
    Return; 
} 

CSVReader является CSV Parser.

Мой вопрос в том, является ли это лучшим и наиболее эффективным способом загрузки большого набора данных в gridview?

EDIT: Будет ли лучше использовать список для строк или что-то иное, чем таблица данных?

+0

Вы уверены, что привязка данных медленная? Вы измеряли производительность этого кода с помощью профилировщика Visual Studio? –

+0

Если у вас медленное время загрузки, попробуйте что-то вроде добавления таких страниц, как в ссылке, которую я предоставляю. Это может или не поможет, поскольку я никогда не тестировал его раньше. Но для вас это выглядит довольно просто. http://www.codeproject.com/Articles/211551/A-Simple-way-for-Paging-in-DataGridView-in-WinForm – aladd04

+0

@ Антонио Бакула да, я сделал, я ищу любое улучшение времени загрузки и передняя часть, это единственное, что я вижу, я могу улучшить производительность. – Bit

ответ

2

Я думаю, что есть только один способ загрузить большой набор данных в grid-view, и именно тот, который вы используете прямо сейчас, но если вы хотите повысить производительность, я настоятельно рекомендую использовать разбивку на страницы, чтобы у вас были куски загруженные данные на каждой странице поэтому вы будете уменьшить время загрузки

http://sivanandareddyg.blogspot.com/2011/11/efficient-server-side-paging-with.html

http://www.codeproject.com/Articles/125541/Effective-Paging-with-GridView-Control-in-ASP-NET

http://www.4guysfromrolla.com/articles/031506-1.aspx

+0

Можете ли вы привести пример, мне было интересно об использовании таблица данных по сравнению со списком или ??? что-то другое. – Bit

+0

У меня есть ссылки, которые должны помочь вам –

+0

спасибо, я посмотрю их, но я работаю над приложением Winform и думаю, что вы говорите на ASP.net. – Bit

Смежные вопросы