ASP.NET MVC / C# - Как конвертировать / создавать Excel (xls) с форматированием из DataTable / List в MVC?


Я смог создать файл Excel xls из DataTable, следуя этой ссылке. Но как отформатировать содержимое файла XLS?

Спасибо.

4 2

4 ответа:

Я лично использовал NPOI с хорошими результатами.

Используя этот метод, вы не можете отформатировать содержимое. Для этого вам нужно будет сгенерировать реальный двоичный файл Excel, используя какой-либо сторонний элемент управления. Вот один из них, который стоит проверить. Вы также можете взглянуть на Эту статью.

Решение в этой ссылке просто создает разделенный вкладками файл значений, который может содержать только данные ячейки, а не информацию о форматировании. Если вам нужно форматирование, то вы либо сохраните разметку HTML с расширением .xls (не тот подход, который я обычно рекомендую), или вы хотите создать "подлинный" файл Excel... но я не знаю, какие параметры библиотеки у вас есть в C#, чтобы сделать это (кроме использования .net

Однако есть ряд библиотек, перечисленных в ответах на это предыдущий вопрос

Если вы предпочитаете избегать сторонних библиотек, у вас есть две другие разумные альтернативы:

Лично я поклонник SpreadsheetML (один из форматов, поддерживаемых Excel 2003+), так как его относительно легко создать вручную с нуля. Просто создайте файл, который выглядит правильно, и сохраните его в формате SpreadsheetML, а затем используйте его в качестве руководства при создании своего собственного.


Альтернативой является начать с предварительно сформированного" чистого " документа Excel (с заголовками таблиц, но никакие данные). Затем вы можете вставить в него строки данных с помощью Jet.поставщик OLEDB.

Это имеет множество недостатков по сравнению с использованием сторонних библиотек:
1. Невозможно отформатировать вставляемые данные. Допускается только форматирование заголовков таблиц и т. д.
2. Проблемы совместимости в некоторых версиях Windows.
3. Плохо обрабатывает некоторые типы данных.

У него есть несколько преимуществ перед использованием сторонних библиотек:
1. от Microsoft. Меньше ошибок, бесплатно, меньше риска вредоносных программ код.
2. Очень проста в использовании, если вы уже привыкли работать с SQL.