我正在构建一个解决方案,允许用户从Word模板中挑选部分,使用数据库中的内容填充这些部分,并将1000个新数据组装成新的.docx文档。到目前为止,我已经成功地找到了定位内容并将该内容移植到新文档中的方法。我使用OpenXML SDK2.0通过样式和内容控件来定位内容。我能够创建包含段落、SdtBlocks、Run等元素的IEnumerable对象。
我需要找到一种优雅的方法来序列化这些元素块,这样我就可以将它们作为VARBINARY类型的完整块存储在SQL 2005数据库中。谁能给我举个可行的例子来序列化这些OpenXML部件/元素?
发布于 2011-06-28 21:09:01
我目前正在处理Excel,但我认为你的问题在本质上是相似的。
从下面的代码中,我可以提取行的XML代码,然后存储它。
private string GetContents(uint rowIndex)
{
return GetExistingRow(rowIndex).OuterXml;
}
private Row GetExistingRow(uint rowIndex)
{
return SheetData.
Elements<Row>().
Where(r => r.RowIndex == rowIndex).
FirstOrDefault();
}请注意,SheetData对象被提取为
this.SheetData = WorksheetPart.Worksheet.GetFirstChild<SheetData>()我希望这能帮到你。
https://stackoverflow.com/questions/4628754
复制相似问题