コード例 #1
0
        public IActionResult GetAccounts()
        {
            try
            {
                var storageName = HttpContext.Session?.GetString("StorageName");
                //List<AccountModel> accounts;
                if (storageName == null)
                {
                    return(new BadRequestObjectResult("Нужно зайти в хранилище"));
                }

                //LoadStorages(ref storageDB, storageName);
                var storage = storageContext.Storages
                              .Where(s => s.Name == storageName)
                              .FirstOrDefault();

                if (storage == null)
                {
                    return(new BadRequestObjectResult("Хранилище не найдено"));
                }

                if (HttpContext.Session?.GetString("StorageKey") == null)
                {
                    return(new BadRequestObjectResult("Ключ отсутствует"));
                }

                var accounts = encryptor.DecryptList(dataLite.Accounts.GetAll());

                dataLite.Close();

                return(new OkObjectResult(accounts));
            }
            catch (Exception ex)
            {
                logger.LogInformation(ex.Message + "######## " + ex.StackTrace);
                return(new BadRequestObjectResult(ex.Message + "\n" + ex.StackTrace));
            }
        }