Есть несколько способов решить эту проблему.
APP_INITIALIZER
(см. здесь ), чтобы выполнить внутренний вызов и убедиться, что объект пользователя присутствует, когда приложение загружается. BehaviorSubject
где-нибудь в службе, и чтобы компоненты, зависящие от него, подписывались на этот BehaviorSubject
везде, где требуется экземпляр пользователя. Когда служба создаст, сделайте так, чтобы она сделала бэкэнд-вызов и вставила завершенный пользовательский экземпляр в BehaviorSubject
(userSubject.next(user)
), когда она будет завершена. Необходимо взглянуть на OpenXML SDK 2.0.
Связанные статьи блога:
Вы могли использовать сторонний компонент как Ячейки Aspose или XLSIO (Syncfusion):
Использование Aspose. Ячейки, разработчики могут легко открыть и сохранить множество форматов файлов. Они включают Excel 97 / 2000 / XP / 2007 (XLSX), SpreadSheetML, Разграниченная Вкладка и документы CSV. Использование Aspose. Ячейки, которые можно также открыть, зашифровали файлы Excel. Даже возможно преобразовать документы Excel в формат PDF при помощи другого продукта Aspose (который является Aspose.Pdf), alongwith Aspose. Ячейки.
Помните также, что во многих случаях.CSV сделает. Excel читает прекрасных.
Вам только будет нужен файл XLSX для функций только для Excel как форматирование, несколько рабочих листов, и т.д. - и для тех, существует много существующих библиотек генератора Excel 1997-2003, что make-файлы это будет работать с Excel 2007.
SpreadsheetGear for .NET может генерировать рабочие книги XLS и XLSX и включает в себя комплексный API для настройки / форматирования данных.
Вы можете увидеть живые примеры отчетов ASP.NET Excel здесь .
Отказ от ответственности: У меня есть SpreadsheetGear LLC.
Пакет Excel - это компонент с открытым исходным кодом (GPL) для чтения / записи файлов Excel 2007. Я использовал его в небольшом проекте, и API прост.
Исходный код также кажется хорошо организованным и его легко обойти (если вам нужно расширить функциональность или исправить мелкие проблемы, как это сделал я).
Вы можете использовать любой подход (настройка шаблона или создание всего с нуля) .