这里同步某一个特定笔记本的所有笔记的实现,而且笔记都是不带资源的。另外同步笔记是不需要处理重名问题的
在同步之前首先必然需要构造两个类,分别代表服务器端的数据,和本地端的数据,以及他们的一些操作。
下面给出这两个类的定义,详细代码太长。明后天完成整个程序后,会把所有的代码放到GitHub中进行开源。
其中在服务端的构造函数中完成了登入获取NoteStroe等功能,本地端的构造函数完成了从本地文件读取数据的功能
class EvernoteServer
2: {
public EvernoteServer()
4:
//创建AdageNotebook
private Notebook CreateAdageNotebook()
7:
//获取AdageNotebook下的所有的Note的元数据
//执行这个函数会在更新服务器中Note的Updated
public List<Note> GetActiveNotes()
11:
//获取在被删除的(在回收站中)Notes的元数据
//但是这个方法没办法获取永久性删除的数据。
public List<Note> GetInactiveNotes()
15:
//向服务端添加Note
//会对参数note的Guid 时间戳 USN等信息做修改
void AddNote(Note note)
19:
//向服务端更新Note
//会对参数note的Guid 时间戳 USN等信息做修改
void UpdateNote(Note note)
23:
//从服务端删除Note
void DeleteNote(Note note)
26:
//从服务器获取带Content信息的Note
//执行这个函数会在更新服务器中note的Updated
public Note GetNote(Note note)
30:
//从服务器获取USN
public Int32 USN
33:
34: }