public IActionResult BatchDetails(string id)
        {
            id = _dataProtector.UnprotectString(id);

            ErrorViewModel            errorModel  = new ErrorViewModel();
            GetTransactionRequestBody requestBody = BuildGetTransactionsRequestBody(id);

            ResponseDetails response = _apiHelper.SendPaymentApiRequest(requestBody);

            if (response.Success)
            {
                GetTransactionResponseBody responseBody = JsonConvert.DeserializeObject <GetTransactionResponseBody> (response.Data.ToString());

                if (responseBody.Messages.ResultCode.ToLower() == "ok")
                {
                    BatchDetailsModel model = new BatchDetailsModel()
                    {
                        SettledTransactions = responseBody.Transactions
                    };

                    model.SettledTransactions = ProtectTransactionId(model.SettledTransactions);

                    return(View(model));
                }
                else
                {
                    errorModel.Message = "No records found";
                }
            }
            else
            {
                errorModel.Message = response.Data.ToString();
            }

            return(View("Error", errorModel));
        }
示例#2
0
        internal static async Task <string> ReadSecretFile(string filePath, DataProtector protector)
        {
            // Load file content
            byte[] encrypted;
            using (var file = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.None))
            {
                using (var ms = new MemoryStream())
                {
                    int    read;
                    byte[] buffer = new byte[16 * 1024];
                    while ((read = await file.ReadAsync(buffer, 0, buffer.Length)) > 0)
                    {
                        ms.Write(buffer, 0, read);
                    }
                    encrypted = ms.ToArray();
                }
            }

            // Decrypt it
            return(protector.UnprotectString(encrypted));
        }