2009-05-31 3 views
0

мне нужно manuplate в Excel лист рабочей книги (добавить листы/добавить данные/скрыть столбцы/защищают клетки с паролем/изменения поля содержимого/и т.д. и т.п.)ASP.NET manuplating Excel лист

я должен использовать COM-объекты, предоставленные microsoft (но тогда я думаю, что у них мало проблем, используемых в asp.NET)

или есть хорошая (коммерческая или бесплатная) библиотека/плагин для использования в этом виде деятельности.

пожалуйста, помогите

ответ

2

попытка распространения Лист передач третьей стороне компонент

http://www.spreadsheetgear.com/

+0

Я получил все, что вам нужно, используя расширенный лист –

1

Самый простой способ я нашел, чтобы использовать 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.

1

С SpreadsheetGear у вас есть полный доступ к документу Excel и все макро возможностей, включая возможность защиты и снимите защиту клеток, колонн и т.д. Мы имеем то же самое, что вы описываете, кроме как в WinForms.

0

Мы использовали COM-объекты, и я не могу рекомендовать его. На большой проблеме заключается в том, что объекты никогда не выпускаются ...

Теперь мы используем компонент программного обеспечения Gembox. Использовали его в течение двух лет и работают нормально, это немного дешевле, чем тот, который был выше, который я не знал, прежде чем увидеть его здесь.

Смежные вопросы