我在数据库中存储了一些HTML,我希望使用DocumentFormat.OpenXml将其插入到Word文档中。
受到文章here的启发,我尝试了以下代码。
mainPart.AddAlternativeFormatImportPart(AlternativeFormatImportPartType.Xhtml,
String.Format("<html><body>{0}</body></html>", html));
但是这给了我以下错误。
'(我的HTML在这里)'ID不是有效的XSD ID
我真的不明白这个错误。有谁知道我做错了什么?
另外,我对这种方法的最大担心是HTML可能没有完美形成,我怀疑这些代码并不像浏览器那样宽容。对其他可能方法的任何建议?我正在考虑解析HTML并自己渲染,但这将是很多工作。
答案 0 :(得分:2)
第二个参数是零件ID,而不是零件内容。
要设置部件内容,您需要将格式正确的XHTML放入返回的RootElement
AlternativeFormatImportPart
属性中