Тестовое задание. С#.

Дан класс, описывающий транзакцию.

public class Transaction
{
public int Id { get; set; }
public DateTime TransactionDate { get; set; }
public decimal Amount { get; set; }
}

Напишите консольное приложение, позволяющее создавать и сохранять транзакции и получать ранее-сохраненные транзакции по Id. В приложении нужно обработать 3 команды: add, get и exit. Команда add инициализирует ввод данных транзакции. Команда get инициализирует ввод Id транзакции для последующего вывода транзакции. Команда exit - выход из приложения. При этом необходимо соблюсти следующие условия:

  • Объекты экземпляра класса Transaction необходимо сохранять в памяти
  • Все свойства экземпляра класса Transaction обязательны для заполнения
  • Результат запроса транзакции по ее Id должен быть представлен в виде сериализованного объекта, json-строкой

Пример консольного ввода транзакции для ее последующего сохранения:

add
Введите Id: 1
Введите дату: 22.12.2019
Введите сумму: 100.23
[OK]

Пример консольного ввода номера транзакции для ее последующего отображения:

get
Введите Id: 1
{"id":1,"transactionDate ":"2019-04-02T13:10:20.0263632+03:00","amount":23.05}
[OK]

Организация хранения сущностей в памяти - на усмотрение соискателя. Обработка ошибок в работе приложения - на усмотрение соискателя.