如何使用C#在现有的MS onenote页面上插入文本行

时间:2015-11-25 10:33:54

标签: c# onenote

我想使用C#将线条添加到onenote页面上。 要使页面已知,但我找不到在现有的onenote页面上插入行。

2 个答案:

答案 0 :(得分:0)

我假设你在谈论OneNote REST API。要在OneNote中向现有页面添加文本行,可以使用PATCH API。 以下是官方文档的链接:http://dev.onenote.com/docs#/reference/patch-pages

您的请求应如下所示:

PATCH ~/me/notes/pages/{PAGEID}
Content-Type: application/json
Body:
[
{
   "target":"body",
   "action":"append",
   "position":"after",
   "content":"MySentenceHtmlContent"
}
]

如果您有任何疑问,请与我们联系! 乔治

答案 1 :(得分:0)

我有一个解决方案,可以在现有的OneNote页面上插入文本行。 使用XML格式,列表如下

    public static string SetPageContent(string pageId, string msg)
    {
        string xml;
        onenoteApp.GetPageContent(pageId, out xml, PageInfo.piAll);
        var doc = XDocument.Parse(xml);

        // make newline with msg input
        XElement text = new XElement(ns + "OE",
            new XElement(ns + "T",
                new XCData(msg)));

        // insert new line
        doc.Root.Element(ns + "Outline").Element(ns + "OEChildren").Add(text);

        // Now update the page content
        onenoteApp.UpdatePageContent(doc.ToString());

        return null;
    }