Как я могу отобразить огромное количество данных в представлении MVC, не выходя из исключения памяти ?
Я загружаю excel с данными более чем в 2 строки lacs. Разделяя на куски по 500 строк каждый раз, чтобы создать xml и попасть в базу данных, после обработки с помощью хранимой процедуры я возвращаю обновленные 500 строк и храню в datatable и добавляю каждые 500 возвращенных строк до 2 строк lacs обрабатываются.
Его работа отлично работает, я получаю datatable из 2 лаков обработанных строк. Теперь, когда я возвращаю этот Datatable в представление для отображения, он выбрасывает исключение из памяти.
Пожалуйста помочь.
Controller : return View(validateDS.Tables[0]);
Смотреть:
@model System.Data.DataTable @using System.Data; <h2>Upload File</h2> @using (Html.BeginForm("Index", "Upload", null, FormMethod.Post, new { enctype = "multipart/form-data" })) { @Html.AntiForgeryToken() @Html.ValidationSummary() <div class="form-group"> <input type="file" id="dataFile" name="upload" /> </div> <div class="form-group"> <input type="submit" name="Command" value="Upload Cegedim" class="btn btn-default" /> </div> if (Model != null) { <table> <thead> <tr> @foreach (DataColumn col in Model.Columns) { <th>@col.ColumnName</th> } </tr> </thead> <tbody> @foreach (DataRow row in Model.Rows) { <tr> @foreach (DataColumn col in Model.Columns) { <td>@row[col.ColumnName]</td> } </tr> } </tbody> </table> } }
Что я уже пробовал:
Я попробовал приведенный выше код. Он отлично работал для 50 тысяч записей. теперь он не работает для 2 записей lac.
Я знаю, что .Net предоставляет только 2 ГБ данных, но для таких ситуаций должен быть обходной путь, пожалуйста, помогите.
1) я также хочу знать, как я могу применить пейджинг в этой ситуации с приведенным выше кодом.
Mehdi Gholam
Не показывайте так много данных.
NaibedyaKar
Я не уверен, какие данные вы показываете, но 2 записи lacs на странице-это очень плохая идея. Вам лучше поискать подкачку на стороне сервера, чтобы показать данные.
F-ES Sitecore
Пожалуйста, обратите внимание, что это англоязычный сайт, мы не знаем, что такое "Лакс", он ничего для нас не значит, поэтому мы не знаем цифр, о которых вы говорите.
Как бы то ни было, человек все равно может обрабатывать только такой объем информации, поэтому показывать много данных всегда бесполезно. Обновите свой сайт, чтобы использовать подкачку\фильтрацию\поиск вместо того, чтобы просто показывать огромный список данных.
Abrar Kazi
хорошо спасибо всем я подаю заявку на пейджинг