/// <summary> /// Remove a card from Visa /// </summary> /// <returns></returns> public async Task <ResultCode> RemoveCardAsync() { ResultCode result = ResultCode.None; var card = (Card)Context[Key.Card]; var partnerCardId = card.PartnerCardInfoList.Where(p => p.PartnerId == Partner.Visa).Select(p => p.PartnerCardId).First(); // Build a card register request object. var request = VisaRtmDataManager.GetDeleteCardRequest(GetVisaExternalUserId(), VisaConstants.CommunityName, partnerCardId); LogRequest("RemoveCard", request); // Invoke the partner to add the card. result = await PartnerUtilities.InvokePartner(Context, async() => { var response = await VisaInvoker.RemoveCard(request); LogRequestResponse("RemoveCard", request, response, response.Success); // Determine the ResultCode from the response code. result = response.Success ? ResultCode.Success : ResultCode.UnknownError; return(result); }, null, Partner.None, true).ConfigureAwait(false); return(result); }