Вставка HTML в Word с использованием OpenXML - PullRequest
0 голосов
/ 10 августа 2011

У меня есть некоторый HTML, хранящийся в базе данных, который я хочу вставить в документ Word с помощью DocumentFormat.OpenXml.

Вдохновленный статьей здесь , я попробовал следующий код.

mainPart.AddAlternativeFormatImportPart(AlternativeFormatImportPartType.Xhtml,
    String.Format("<html><body>{0}</body></html>", html));

Но это дает мне следующую ошибку.

'(Мой HTML здесь)' ID не является действительным идентификатором XSD

Я действительно не понимаю эту ошибку. Кто-нибудь знает, что я делаю не так?

Кроме того, меня больше всего беспокоит этот подход в том, что HTML-код может быть не полностью сформирован, и я подозреваю, что этот код не так прост, как браузеры. Любые рекомендации для других возможных подходов? Я подумываю разобрать HTML-код и сделать его сам, но это будет много работы.

1 Ответ

2 голосов
/ 10 августа 2011

Второй параметр - это идентификатор детали, а не содержимое детали.

Чтобы установить содержимое детали, необходимо поместить правильно сформированный XHTML в свойство RootElement возвращаемого значения AlternativeFormatImportPart

...