Самый простой способ я нашел, чтобы использовать Excel XML format. Таким образом, вы можете редактировать лист Excel, как и любой другой XML-файл. Чтобы увидеть, как Excel скрывает столбцы или защищает их паролем, выполните эти действия вручную и посмотрите, как Excel сохраняет их как XML. Это бриз для кодирования, он устойчив к скале, и это быстро.
Управлять собственными файлами Excel сложнее: вы можете использовать COM-объекты с помощью primary interop assemblies. По моему опыту, это очень сложно. В лучшем случае Excel оставляет старые копии самих себя, что вы можете смягчить с помощью запланированного ночного сброса сервера. В худшем случае Excel будет беспорядочно висеть, что делает ваш веб-сайт безответным.
Другой способ работы с собственными файлами Excel - Visual Studio Tools for Office. Это, конечно, проще в использовании, чем COM Interop, и лучше всего работает с Visual Basic:
Application.Workbooks.Open("Workbook.xls")
C# не имеет дополнительных параметров, и открытие книги становится чем-то неудачная шутка:
Application.Workbooks.Open(@"Workbook.xls",
missing, missing, missing, missing, missing, missing, missing,
missing, missing, missing, missing, missing,missing, missing);
я не сделал погрузиться очень далеко в VSTO, потому что XML-манипуляция работала так хорошо для меня. Возможно, другие люди могут прокомментировать, как это работает на веб-сайте ASP.NET.
Я получил все, что вам нужно, используя расширенный лист –