Как создать и заставить пользователя загрузить файл Excel из переменных данных в массивах? - PullRequest
0 голосов
/ 28 марта 2019

Я работаю над проектом в .NET Core 1.1, и теперь я должен предоставить пользователю возможность загрузить файл Excel, данные которого зависят от параметров, выбранных пользователем, поэтому Excel должен быть создан вмомент, когда пользователь нажимает кнопку «Экспорт в Excel» и загружает файл.

Я искал в интернете, но честных ответов не получил.Я предполагаю, что мне придется использовать Open XML SDK, но для того, чтобы создать его в памяти и тому подобное, у меня недостаточно знаний.

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

Ответы [ 2 ]

1 голос
/ 28 марта 2019

Хотите также показать свои данные перед загрузкой? Может быть, вы можете использовать DataTables :

DataTables - это плагин для библиотеки jQuery Javascript. Это очень гибкий инструмент, построенный на основе прогрессивного улучшение, которое добавляет все эти расширенные функции в любой HTML таблица.

Пагинация Предыдущая, следующая и страница навигации. Фильтр мгновенного поиска результаты по текстовому поиску.

0 голосов
/ 28 марта 2019

с использованием NPOI https://github.com/tonyqus/npoi что-то в строке этого:

void safearrayAsExcel(object[,] rows,string filename){
    var workbook = new HSSFWorkbook();
    var sheet = workbook.CreateSheet("New Sheet");

    for(int i = 0; i < rows.length;i++)
    {
        var row sheet.CreateRow(i);
        for(int j = 0; j < row.length;j++)
            row .CreateCell(j).SetCellValue(rows[i,j]);
    }
    FileStream fileOut = new FileStream(fileName, FileMode.Create);
    workbook.Write(fileOut);
}

Вы можете, конечно, использовать поток памяти вместо файлового потока и делать все, что захотите, с помощью сгенерированного Excel

используйте HSSFWorkbook для формата xls. и XSSFWorkbook для формата xlsx.

Я не совсем знаю о проблемах совместимости с .net core 1.1 и .net standard 2.0, но должен быть способ заставить его работать

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