【问题标题】:The name SpaceProcessingModeValues does not exist in this context此上下文中不存在名称 SpaceProcessingModeValues
【发布时间】:2015-03-01 12:38:51
【问题描述】:

在我的 ASP.net 程序中,我有一个类可以打开一个 word 文档,找到一个 boormark 并插入一个给定的文本

我得到的错误是:名称 SpaceProcessingModeValues 在当前上下文中不存在。

using (WordprocessingDocument document = WordprocessingDocument.Open(strFileName, true))
    {
        MainDocumentPart mainPart = document.MainDocumentPart;
        IEnumerable<BookmarkStart> res = from bm in      mainPart.Document.Body.Descendants<BookmarkStart>()
            where bm.Name == "strField"
            select bm;
        int x = 0;

        BookmarkStart bookmark = res.SingleOrDefault();
        if (bookmark != null)
        {
            OpenXmlElement parent = bookmark.Parent; // bookmark's parent element

            var paragraph1 = new Paragraph {RsidParagraphAddition = "00023529", RsidRunAdditionDefault = "003E1BA6"};

            var run1 = new Run();
            var text1 = new Text("Text : "){ Space = SpaceProcessingModeValues.Preserve };

            run1.Append(text1);
            var bookmarkStart1 = new BookmarkStart {Name = "_GoBack", Id = 0};
            var bookmarkEnd1 = new BookmarkEnd {Id = 0};

            var run2 = new Run();
            var text2 = new Text();
            text2.Text = strGivenText;

            run2.Append(text2);

            paragraph1.Append(run1);
            paragraph1.Append(bookmarkStart1);
            paragraph1.Append(bookmarkEnd1);
            paragraph1.Append(run2);

            parent.InsertBeforeSelf(paragraph1);
        }

        // close saves all parts and closes the document
        mainPart.Document.Save();
        document.Close();
    }

【问题讨论】:

  • 哪一行报错?
  • 我刚刚发现我做错了什么。从 Nuget,我使用了 DocumentFormat.OpenXml SDK 而不是 OpenXml SDK。

标签: c# asp.net openxml space


【解决方案1】:

您需要添加引用 DocumentFormat.OpenXml 命名空间

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-10-02
  • 2014-04-22
  • 2017-06-17
  • 2015-09-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多