本文整理汇总了C#中Tomboy.Note.PopulateWith方法的典型用法代码示例。如果您正苦于以下问题:C# Note.PopulateWith方法的具体用法?C# Note.PopulateWith怎么用?C# Note.PopulateWith使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Tomboy.Note
的用法示例。
在下文中一共展示了Note.PopulateWith方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Put
public object Put(PutNotesRequest request)
{
try {
using (var note_repo = GetNotes (request.Username)) {
// constraint taken from snowy source code at http://git.gnome.org/browse/snowy/tree/api/handlers.py:143
var new_sync_rev = note_repo.Manifest.LastSyncRevision + 1;
// TODO LatestSyncRevision is not correctly SERIALIZED
Logger.DebugFormat ("client sent LatestSyncRevision: {0}", request.LatestSyncRevision);
// TODO sanitize LatestSyncRevision sent by client - we don't need it to update notes
// but a wrong LatestSyncRevision may be an indicator for a bug in the client
//if (new_sync_rev != note_repo.Manifest.LatestSyncRevision + 1)
// throw new Exception ("Sync revisions differ by more than one, sth went wrong");
foreach (var dto_note in request.Notes) {
var note = new Note ("note://tomboy/" + dto_note.Guid);
// map from the DTO
note.PopulateWith (dto_note);
if (dto_note.Command == "delete") {
note_repo.Engine.DeleteNote (note);
} else {
// track the revision of the note
note_repo.Manifest.NoteRevisions [dto_note.Guid] = (int)new_sync_rev;
note_repo.Engine.SaveNote (note, false);
}
}
// only update the sync revision if changes were sent
if (request.Notes.Count > 0)
note_repo.Manifest.LastSyncRevision = new_sync_rev;
var notes_to_return = NotesService.GetStoredNotes (note_repo);
notes_to_return.LatestSyncRevision = new_sync_rev;
return notes_to_return;
}
} catch (Exception e) {
// log the error and rethrow
Logger.DebugFormat ("CAUGHT EXCEPTION: {0} {1}", e.Message, e.StackTrace);
throw e;
}
}