如何在C#中更改word文档中使用的变量值

时间:2016-09-07 06:56:54

标签: c# .net office-interop

我在word文档中使用了一些变量。我必须在不同的场景中打印这个word文档,我在我的C#应用​​程序中这样做。每当我打印此文档时,我需要在打印前设置使用word文档的变量值。 我使用了以下代码。但似乎没有任何影响。 这个问题有适当的解决方案吗?

 string filepath = @"c:\Changesneed-Comments.docx"; ;
        Microsoft.Office.Interop.Word.Application word = new Microsoft.Office.Interop.Word.Application();
        Microsoft.Office.Interop.Word.Application app = new Microsoft.Office.Interop.Word.Application();
        Document doc = word.Documents.Add(filepath);

        doc.Variables["MTQProductName"].Value = "SamSung"; 

        doc.Fields.Update();

        doc.SaveAs2(@"c:\Changesneed-Comments34.docx");

        app.Quit();

1 个答案:

答案 0 :(得分:1)

您使用此代码的应用程序类型是什么?

如果它是asp.net网站,它将无法正常工作,因为word interop它只是包装库,支持winword.exe,其中word是安装。通常word不会安装在服务器上。

但是,如果是asp.net,您可以使用Open XML SDK来满足您的要求。