ASP.NET: изменение и загрузка файла docx

У меня есть файл docx, который я хотел бы изменить в соответствии с вводом веб-пользователя. Итак, после того, как пользователь отправит форму на веб-страницу, мне нужно изменить исходный файл docx, а затем загрузить его пользователю.

Я пытаюсь сохранить исходный файл в качестве файла ресурсов в своем проекте, но не могу открыть его программно. Вот что я пробовал в пост-контроллере:

using Microsoft.Office.Interop.Word;
...
Application app = new Application();
Document document = app.Documents.Open(Properties.Resources.___, ReadOnly: false);

Но я получил System.Runtime.InteropServices.COMException (0x80020005 (DISP_E_TYPEMISMATCH))

Я также не знаю, как скачать модифицированный файл. В простом консольном приложении document.SaveAs2(newPath); работало, но для скачивания, похоже, не работает.

(Я даже не уверен, что весь этот способ может работать. Если я не могу использовать Microsoft.Office.Interop.Word таким образом, дайте мне знать.)


person szkup    schedule 11.09.2020    source источник
comment
что ты уже испробовал? Вы искали свое сообщение об ошибке в Google и читали некоторые темы?   -  person Glynn Hurrell    schedule 12.09.2020


Ответы (1)


Если вы хотите манипулировать файлами docx, лучше использовать OpenXML API, а не InterOP. См. https://docs.microsoft.com/en-us/office/open-xml/open-xml-sdk?redirectedfrom=MSDN

person Salik Rafiq    schedule 12.09.2020