RemoteAgents WP8
authorgu.martinm@gmail.com <gu.martinm@gmail.com>
Fri, 15 Aug 2014 22:15:24 +0000 (00:15 +0200)
committergu.martinm@gmail.com <gu.martinm@gmail.com>
Fri, 15 Aug 2014 22:15:24 +0000 (00:15 +0200)
Using ConfigureAwait(true) (it is the default value) just
when I want to update the UI.

WindowsPhone/RemoteAgents/RemoteAgents/MainPage.xaml.cs
WindowsPhone/RemoteAgents/RemoteAgents/View/View.cs
WindowsPhone/RemoteAgents/RemoteAgents/ViewModel/ViewModel.cs

index 76c967c..bb16625 100644 (file)
@@ -38,10 +38,12 @@ namespace RemoteAgents
         {
             try
             {
+                // Returning data in the same context (the UI thread) because we want to update the UI.
                 this.CurrentDateTextBox.Text = await _view.GetCurrentDateAsync();
             }
             catch (Exception exception)
             {
+                // TODO: Should I catch exceptions in the UI thread? I guess it is right but not sure...
                 _logger.ErrorException("ButtonGetDateClicked error: ", exception);
             }
         }
@@ -56,6 +58,7 @@ namespace RemoteAgents
             }
             catch (Exception exception)
             {
+                // TODO: Should I catch exceptions in the UI thread? I guess it is right but not sure...
                 _logger.ErrorException("SendDataButtonClicked error: ", exception);
             }
         }
index 29f225c..dc1bcb7 100644 (file)
@@ -9,12 +9,14 @@ namespace RemoteAgents.WindowsPhone.View
 
         async public Task<string> GetCurrentDateAsync()
         {
-            return await _vm.GetCurrentDateAsync();
+            // Returning data in a diferent context. Upper layer decides.
+            return await _vm.GetCurrentDateAsync().ConfigureAwait(false);
         }
 
         async public Task SetWriteTextAsync(string text, int number)
         {
-            await _vm.SetWriteTextAsync(text, number);
+            // Returning data in a diferent context. Upper layer decides.
+            await _vm.SetWriteTextAsync(text, number).ConfigureAwait(false);
         }
     }
 }
index 3320499..788a762 100644 (file)
@@ -11,12 +11,14 @@ namespace RemoteAgents.WindowsPhone.ViewModel
 
         async public Task<string> GetCurrentDateAsync()
         {
-            return await _remoteClient.PostRemoteServiceAsync<string>(uri, "getCurrentDate");
+            // Returning data in a diferent context. Upper layer decides.
+            return await _remoteClient.PostRemoteServiceAsync<string>(uri, "getCurrentDate").ConfigureAwait(false);
         }
 
         async public Task SetWriteTextAsync(string text, int number)
         {
-            await _remoteClient.PostRemoteServiceAsync(uriSetWriteText, "setWriteText", text, number);
+            // Returning data in a diferent context. Upper layer decides.
+            await _remoteClient.PostRemoteServiceAsync(uriSetWriteText, "setWriteText", text, number).ConfigureAwait(false);
         }
 
     }