コード例 #1
0
        public List <GlobalNoteId> SyncNotes(NoteBackupRequest request)
        {
            List <GlobalNoteId> results = new List <GlobalNoteId>();

            dataProvider.ExecuteCmd(
                "note_check_remote",
                inputParamMapper : delegate(SqlParameterCollection parameters)
            {
                var noteRevisionTable       = parameters.AddWithValue("Notes", new GlobalNoteIdTable(request.GlobalNoteIds));
                noteRevisionTable.SqlDbType = SqlDbType.Structured;
                noteRevisionTable.TypeName  = "dbo.NoteRevisionTable";
            },
                singleRecordMapper : delegate(IDataReader reader, short set)
            {
                if (results == null)
                {
                    results = new List <GlobalNoteId>();
                }

                GlobalNoteId result = new GlobalNoteId();
                result.NoteGuid     = reader.GetString(0);
                result.Revision     = reader.GetInt32(1);

                results.Add(result);
            });

            return(results);
        }
コード例 #2
0
        public HttpResponseMessage SyncNotes(NoteBackupRequest request)
        {
            // check if the request is empty
            if (request == null)
            {
                ModelState.AddModelError("", "Missing body data.");
            }
            if (!ModelState.IsValid)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
            }

            ItemsResponse <GlobalNoteId> itemsResponse = new ItemsResponse <GlobalNoteId>();

            itemsResponse.Items = backupService.SyncNotes(request);
            return(Request.CreateResponse(HttpStatusCode.OK, itemsResponse));
        }