public async Task DeleteAsync(Account account, Message message)
{
if (account == null)
throw new ArgumentNullException(nameof(account));
if (message == null)
throw new ArgumentNullException(nameof(message));
var filename = GetMessageFullFileName(account, message);
using (var sqlConnection = new MySqlConnection(_connectionString))
{
sqlConnection.Open();
await sqlConnection.DeleteAsync(message);
await DeleteRecipientsAsync(message, sqlConnection);
}
File.Delete(filename);
}