2

Я последовал Живой учебник аутентификации на странице Azure Mobile Services (http://www.windowsazure.com/en-us/develop/mobile/tutorials/single-sign-on-windows-8-dotnet/)(C#) Azure - Null Reference Исключение во время живого Authentication

и когда я запускаю эту строку кода

LiveLoginResult result = await liveIDClient.LoginAsync(new[] { "wl.basic" }); 

я получаю «исключение NullReferenceException» независимо от того, что я делаю. Я попытался изменить «wl.basic» на «wl.signin», и это тоже не сработало.

Подключен к моей учетной записи Microsoft, я получаю всплывающее окно, позволяющее ему войти в систему, приложение связано с моей учетной записью dev, и я добавил ключ клиента и секрет для своей учетной записи azure. Спасибо за тонну за помощь всем! Это сводит меня с ума. Вот полный код, если это поможет. Он не проходит мимо строки, указанной выше, и я также размещал ее на MSDN, просто подумал, что StackOverflow будет более полезен.

private LiveConnectSession session; 


    private async System.Threading.Tasks.Task Authenticate() 
    { 
    LiveAuthClient liveIDClient = new LiveAuthClient("https://mobileserviceexample.azure-mobile.net/"); 

     while (session == null) 
     { 

      // TODO: Added for testing of multiple microsoft accounts. Only works on non-connected accounts 
      if (liveIDClient.CanLogout) 
      { liveIDClient.Logout(); } 

      LiveLoginResult result = await liveIDClient.LoginAsync(new[] { "wl.basic" }); 
      if (result.Status == LiveConnectSessionStatus.Connected) 
      {} 

Исключение:

System.NullReferenceException was unhandled by user code 
HResult=-2147467261 
Message=Object reference not set to an instance of an object. 
Source=Microsoft.Live 
StackTrace: 
    at Microsoft.Live.ResourceHelper.GetString(String name) 
    at Microsoft.Live.TailoredAuthClient.<AuthenticateAsync>d__0.MoveNext() 
    --- End of stack trace from previous location where exception was thrown --- 
    at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() 
    at Microsoft.Live.LiveAuthClient.<ExecuteAuthTaskAsync>d__4.MoveNext() 
--- End of stack trace from previous location where exception was thrown --- 
    at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task  task) 
    at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() 
    at CommunistTutsApp.HomePage.<Authenticate>d__0.MoveNext() 
--- End of stack trace from previous location where exception was thrown --- 
    at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task  task) 
    at System.Runtime.CompilerServices.TaskAwaiter.GetResult() 
    at CommunistTutsApp.HomePage.<OnNavigatedTo>d__f.MoveNext() 
+0

Вы можете опубликовать полное исключение (включая трассировку стека), которое вы получаете? Это будет полезно определить, где находится ошибка. – carlosfigueira

ответ

3

У меня был тот же проблемный «Ссылка на объект не указывает на экземпляр объекта» при вызове LoginAsync. Убедитесь, что вы ввели URL переадресации в Живом Connect Setup- см Шаг 4 прикрепленного ссылка- https://www.windowsazure.com/en-us/develop/mobile/how-to-guides/register-for-microsoft-authentication/

Спасибо!

+0

У меня ошибка, потому что я не заполнил поле целевого домена в Центре разработчиков аккаунтов Microsoft. –

Смежные вопросы