Eric White posted yesterday release V2 of his simple Open XML document generation system, a high-performance tool for generating customized documents from any data source that can be serialized as XML.
This tool is part of Eric’s ongoing series of posts on generating Open XML WordprocessingML documents. In his approach, you configure the document generation process by creating a template document, then inserting content controls in the template document, and then entering appropriate XPath expressions in the content controls. Those XPath expressions specify where to find the data that will populate the content controls for each custom-assembled document at runtime.
For an example of this approach in action, check out the two-minute screencast on Eric's blog post, which demonstrates generation of 3000 documents in less than 30 seconds. The source code for this system is less than 230 lines total, and provides a great starting point for those who want to do something more complex. For many common applications, however, this example already includes everything you need.
On a related note, Eric has recently started writing how-to articles for the OpenXMLDeveloper.org web site, so if you’re doing Open XML development you’ll want to follow those as well. Many of his articles are inspired by questions posted on the Forums section of that site, so be sure to post your Open XML development questions there, and if the answer merits a more comprehensive response he’ll write up an article illustrating the concepts involved.