コード例 #1
0
        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();
        }
コード例 #2
0
 public void Add(Photo photo)
 {
     PhotoDataContext.Current.Photos.InsertOnSubmit(photo);
     PhotoDataContext.Current.SubmitChanges();
 }