Объединение полей в Office 2007 или 2003 с помощью C#

Я хочу настроить шаблон документа в соответствии с этим:

================
Doc content

----------------
Merge Field1
Merge Field2
Merge Field3
----------------

More doc content
================

Затем я хочу иметь возможность открыть документ, загрузить DataTable из базы данных на С# и объединить поля в разделе шаблона посередине. DataTable будет иметь несколько записей, поэтому для создания одного большого документа необходимо объединить и вывести несколько шаблонов. Я не могу найти примеры того, как это сделать.


person Craig    schedule 18.02.2009    source источник


Ответы (3)


Некоторое время назад я занимался этим делом. Мы использовали автоматизацию Word, но это болезненно (потому что Word будет делать сумасшедшие вещи, такие как всплывающее модальное диалоговое окно, которое сломает ваш код).

Мы перешли к использованию библиотеки Aspose. Я нашел это довольно разумным и довольно полнофункциональным в этой области (есть хорошая поддержка полей слияния). Однако он коммерческий.

(Я не имею никакого отношения к компании - я просто использовал их программное обеспечение)

Изменить: если вам нужна только поддержка Word 2007, не связывайтесь с этими ребятами; есть много бесплатных библиотек. Однако поддержку более старых версий найти сложнее.

person Alun Harford    schedule 21.02.2009

Если вы ищете информацию о программной замене полей слияния с помощью кода C#, тогда эта статья может помочь.

person Community    schedule 18.02.2009

Я использовал эту библиотеку для создания документов MS Word 2007. Надеюсь, это поможет вам. P.S. Раньше эта библиотека была совершенно бесплатной, но теперь они добавили и коммерческую версию. Но бесплатная версия содержит все необходимые вам функции.

person zihotki    schedule 18.02.2009