私はWindowsPhone8用のアプリケーションを開発しています。次の非常に単純な例を使用して認証を実装しようとしています:http ://www.windowsazure.com/en-us/develop/mobile/tutorials/get-started-with-users -wp8 /、続いてここにこれが続きます:http ://www.windowsazure.com/en-us/develop/mobile/tutorials/authorize-users-in-scripts-wp8/ 。私のアプリケーションは、アプリケーションのユーザーのアクセスを引き続き認証および制御できることが不可欠です。特に私の問題はここにあります:
private async System.Threading.Tasks.Task Authenticate()
{
while (user == null)
{
string message;
try
{
user = await App.MobileService
.LoginAsync(MobileServiceAuthenticationProvider.MicrosoftAccount);
message = string.Format("You are now logged in - {0}", user.UserId);
}
catch (InvalidOperationException e)
{
message = e + "You must log in. Login Required";
}
MessageBox.Show(message);
}
}
これは、両方のチュートリアルのコードとほぼ同じです。でログイン画面を開始しますuser = await App.MobileService
.LoginAsync(MobileServiceAuthenticationProvider.MicrosoftAccount);
が、ログイン資格情報を受け入れた後、次のエラーメッセージの表示を開始します。
+ $exception {System.InvalidOperationException: Cannot start a login operation because login is already in progress.
at Microsoft.WindowsAzure.MobileServices.MobileServiceClient.<SendLoginAsync>d__5.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.TaskAwaiter1.GetResult()
at SeeThrough.MainPage.<Authenticate>d__7.MoveNext()} System.Exception {System.InvalidOperationException}
「ログインはすでに進行中」の状況のため、「ユーザー」が割り当てられることはないため、このプロセスが繰り返されます。オンラインで役立つものが見つかりません。このエラーを検索しましたが、正確な問題のヒットは4つしかありません。これは、githubコードのビットであり、私が見る限りは役に立ちません。