Onenote API和Onenote Interop

时间:2015-02-04 09:08:44

标签: onenote

g·天。

我熟悉编写代码来访问/编辑存储在目录中的笔记本,使用适用于桌面版OneNote的Onenote Interop类(2007,2010,2013)

既然OnenoteAPI适用于基于云的OneNote(Win RT OneNote,WinPhone OneNote等),我对使用哪一个感到困惑。

我正在尝试构建一个使用Onenote来存储一些笔记的应用程序。通常会从城市中的几个位置以及某些移动计算机访问这些笔记。使用Interop方法,我已经有了一个解决方案(字面意思)将一些笔记本电脑复制到移动电脑上,然后再将它们合并回来。

但是,我想使用“云”作为存储选项,而不是将笔记本存储在通常通过丛林VPN访问的一个中心位置。这是因为有些客户会对云感到满意(并且没有自己的服务器),而其他客户则希望至少拥有数据副本,并使用云作为更具移动性的手段。

现在,我还没有去实施或尝试过。我正在寻求可能做过类似事情的人的建议。特别是,我想了解如何:

的建议/提示/线索
  1. 从与Interop兼容的OnenoteAPI格式中提取笔记本页面内容。同样,将它从Interop推回到OnenoteAPI。或者,我可以以某种方式“导出”云笔记本的副本并在以后导入吗?

  2. 昂贵的SharePoint会以某种方式提供帮助吗?免费构建到小型办公室服务器版本怎么样?

  3. 谢谢Internets。

3 个答案:

答案 0 :(得分:1)

N.b。考虑到混淆的可能性,我将仅将Win32-One One One API称为“OneNote COM API”,将现代的基于Web的OneDrive REST API称为“OneNote REST API”

On#1:我们通过OneNote REST API公开的OneNote页面的HTML版本没有与通过COM API公开的OneNote对象模型的1:1映射;这使得他们之间的互操作变得困难。此外,它们都不是为了支持全保真同步体验而设计的 - 这是一个棘手的问题,通常是人们对OneNote开箱即用的体验非常满意。

在#2上:SharePoint 可以解决您的问题。当您的用户在办公室时,OneNote会将其所有更改同步到SharePoint,并接收从Intranet断开连接时丢失的增量。如果客户希望移动,您可以打开SharePoint进行Web访问。然后,您可以使用COM API针对桌面OneNote客户端构建应用程序,并依靠OneNote本身来处理同步。

这里需要注意的是,并非所有OneNote的SKU都支持访问SharePoint笔记本;作为Office套件的一部分购买的Win32客户端,以及附加到Office365订阅的任何副本,包括Mac,iOS和Android。据我所知,Windows Phone没有任何此类限制。

答案 1 :(得分:1)

彼得的更新。 OneNote云API现在支持Sharepoint Online作为存储端点。

答案 2 :(得分:0)

这是一个很老的问题,但如果有人正在阅读它,我可以添加以下内容: OneNote + OneDrive 在同步在多个设备(包括 PC 和手机)上打开的笔记本方面做得非常出色。

我为@Peter pete 推荐的解决方案是将他的旧 COM OneNote 迁移到 OneDrive。