Exemplo n.º 1
0
        private async System.Threading.Tasks.Task saveEntry()
        {
            IsBusy = true;
            try
            {
                var forSave = EntitySaveHelper.GetEntryForSave(Entry);
                var url     = EntryType == 1 ? "generalentries" : "entries";
                if (Entry.EntryId != null)
                {
                    var saved = await DataService.PutItemAsync <DataLayer.Models.Entry>(url, forSave.EntryId.Value, forSave);

                    Entry.EntryId = saved.EntryId;
                }
                else
                {
                    var saved = await DataService.PostItemAsync <DataLayer.Models.Entry>(url, forSave);

                    Entry.EntryId = saved.EntryId;
                }
                EntrySaved?.Invoke(Entry, new EventArgs());
                MessagingCenter.Send <EntryEditViewModel>(this, SUCCESS);
                IsBusy = false;
            }
            catch (Exception ex)
            {
                IsBusy = false;
                if (ex.InnerException != null)
                {
                    ex = ex.InnerException;
                }
                ExceptionHelper.ShowException(ex);
            }
            finally
            {
                IsBusy = false;
            }
        }