private async Task<bool> CreateAccountAsync( CreateAccountPersonInfo createAccountPersonInfo, CancellationToken cancelToken) { try { return await m_client.CreateAccountAsync(createAccountPersonInfo, cancelToken); } catch (ServerException se) { switch (se.StatusCode) { case (int)ServerStatusCode.InvalidAge: m_serverErrorNumber = ServerErrorNumber.InvalidAge; break; case (int)ServerStatusCode.InvalidIPAddress: m_serverErrorNumber = ServerErrorNumber.InvalidIPAddress; break; case (int)ServerStatusCode.InvalidPerson: m_serverErrorNumber = ServerErrorNumber.InvalidPerson; break; case (int)ServerStatusCode.DuplicateCredentialFound: m_serverErrorNumber = ServerErrorNumber.DuplicateCredentialFound; break; } throw; } }
public IAsyncOperation<bool> CreateAccountAsync(CreateAccountPersonInfo createAccountPersonInfo) { return AsyncInfo.Run( async cancelToken => { try { return await CreateAccountAsync( createAccountPersonInfo, cancelToken); } catch (TaskCanceledException) { m_startupStatus = AppStartupStatus.Cancelled; throw; } }); }