Слияние почты/слов в .NET?

Я хотел бы объединить коллекцию информации, которая у меня есть в памяти, и текстовый документ. Я сделал это довольно легко, прежде чем использовать Aspose, но они хотят 2 тысячи долларов за свой инструмент...

Я изучил использование библиотек взаимодействия .NET, но они требуют, чтобы я установил Word на свой сервер, чего я не хочу делать.

Кто-нибудь знает хороший инструмент по разумной цене (или, что еще лучше, бесплатный), который позволит мне делать то, что я пытаюсь, не злоупотребляя своим сервером?


person Abe Miessler    schedule 31.01.2011    source источник
comment
Какая версия Ворда? .doc или .docx?   -  person Iain Galloway    schedule 31.01.2011
comment
Я планирую использовать docx, но было бы неплохо что-то, что работает с любым из них.   -  person Abe Miessler    schedule 31.01.2011
comment
Это я написал бесплатно :) Надеюсь, это будет полезно для вас. ntemplates.codeplex.com   -  person Gonzalo Méndez    schedule 19.07.2012


Ответы (3)


См. библиотеку docx на codeplex.

person Stefan Steiger    schedule 31.01.2011

Если вы используете SQL Server, вы можете использовать службы отчетов SQL Server. Таким образом, вместо красивого текстового документа у вас есть RDL: вы создаете отчеты, и вы можете программно вызывать свои отчеты и генерировать PDF-файлы на лету.

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

person Juliet    schedule 31.01.2011

Взгляните на привязку данных управления контентом.

Используя этот подход, вы включаете свои данные как часть пользовательского XML (т. е. как XML по вашему выбору), и эти данные привязываются к определенным местам в вашем docx с помощью выражений XPath.

Если вы делаете что-то таким образом, Word помогает вам: изменения на поверхности docx отражаются в вашем xml, и наоборот.

Требуется Word 2007 или более поздняя версия (и, к сожалению, версия для Windows, а не Word 2011 для Mac).

person JasonPlutext    schedule 31.01.2011