Seems you have to associate your app with the store to use this feature, or else it hangs. After associating it, everything started working.
LiveAuthClient InitializeAsync hangs
-
29-06-2022 - |
Domanda
I am having trouble with a demo from msdn
On the method updateUserName
:
public static async Task updateUserName(TextBlock userName, Boolean signIn)
{
try
{
// Open Live Connect SDK client.
LiveAuthClient LCAuth = new LiveAuthClient();
LiveLoginResult LCLoginResult = await LCAuth.InitializeAsync();
try
{
//this is never reached
LiveLoginResult loginResult = null;
if (signIn)
......
the code hangs at ht InitialuzeAsync()
method and never enters the try statement. Can someone who has used the live SDK please tell me what migh be wrong? The code is a direct copy-paste from the demo and the live SDK was installed via NuGet on VS2012.
Soluzione 2
Altri suggerimenti
I predict that you are calling Task.Wait
or Task<T>.Result
somewhere further up your call stack. As I describe on my blog, you are causing a deadlock because the await
is attempting to resume on the UI thread.
The correct solution is to use await
"all the way", which is one of the best practices I describe in my article. If you have a situation where you think you "can't" use await
, then take a look at my async
/OOP blog series, which describes various code patterns for async
code, most notably constructors and properties.