private async Task <bool> ExecuteSaveDocumentsCommand() { if (DocsChangeIndexes.Count > 0) { using (var doc = _db.GetDocument(CoreApp.DocId)) using (var mdoc = doc.ToMutable()) using (var listItems = mdoc.GetArray(CoreApp.ArrKey)) { foreach (var index in DocsChangeIndexes) { var item = Items[index]; var dictObj = listItems.GetDictionary(item.Index); dictObj.SetString("key", item.Name); dictObj.SetInt("value", item.Quantity); var blob = new Blob("image/png", item.ImageByteArray); dictObj.SetBlob("image", blob); } _db.Save(mdoc); } DocsChangeIndexes.Clear(); } return(await Task.FromResult(true)); }
public async Task ExecuteImageChangedCommand(int index) { Stream stream = await DependencyService.Get <IPhotoPickerService>().GetImageStreamAsync(); if (stream == null) { return; } var item = _items[index]; using (var memoryStream = new MemoryStream()) { stream.CopyTo(memoryStream); item.ImageByteArray = memoryStream.ToArray(); } DocsChangeIndexes.Add(item.Index); }