Novacode docx书签无法呈现

时间:2017-03-15 10:35:10

标签: c# novacode-docx

我正在使用Novacode docx读取书签并将其替换为我的数据。查看我的docx文件,我有一个名为' UserID'我尝试用我的c#代码替换它,如下所示

using (DocX doc = DocX.Load(oTemplate))
{
    doc.Bookmarks["UserID"].SetText("MyUser");
}

我得到的错误是"序列包含多个元素" 当我在调试器中查看doc的对象时,实际上有两个书签的名称为' UserID'但言语中只有一个。我正在使用2016年的单词。任何人都有任何想法可能是什么问题?

1 个答案:

答案 0 :(得分:-1)

            using (DocX document = DocX.Load(AchivoPlantilla))
            {

                Novacode.Image img = document.Images[0];

                int i = 0;
                foreach (Novacode.Bookmark bookmark in document.Bookmarks)
                {
                    var bookmarks = document.Bookmarks[i].Name;
                    if (bookmarks == "varNombreEmpleado") //Compara la marca con la varible de base de datos
                    {
                        document.Bookmarks[bookmark.Name].SetText(TextBox1.Text);

                    }
                    i++;
                }
                document.SaveAs(docSalida);
                Process.Start("WINWORD.EXE", "\"" + docSalida + "\"");
            }