private void BtnTakePictureClick(object sender, RoutedEventArgs e) { var captureTask = new CameraCaptureTask(); _geoLocationManager.RetrieveCurrentLocation(); captureTask.Completed += (s, a) => { try { if (a.Error == null && a.TaskResult == TaskResult.OK && a.ChosenPhoto != null) { var photo = new Photo { Latitude = _geoLocationManager.Latitude, Longitude = _geoLocationManager.Longitude }; var bytes = new byte[a.ChosenPhoto.Length]; a.ChosenPhoto.Read(bytes, 0, bytes.Length); a.ChosenPhoto.Close(); photo.ImageBytes = bytes; _persistenceManager.Add(photo); } } catch (Exception ex) { Console.WriteLine(ex.Message); } }; captureTask.Show(); }
public void Add(Photo photo) { PhotoDataContext.Current.Photos.InsertOnSubmit(photo); PhotoDataContext.Current.SubmitChanges(); }