public async Task <int> Handle(CreateStationCommand request, CancellationToken cancellationToken)
            {
                var station = new Station
                {
                    Name        = request.Name,
                    Altitude    = request.Altitude,
                    City        = request.City,
                    CountryCode = request.CountryCode,
                    Latitude    = request.Latitude,
                    Longitude   = request.Longitude,
                    Timezone    = request.Timezone,
                    StaticMap   = request.StaticMap,
                    UserId      = request.UserId
                };

                await context.Stations.AddAsync(station, cancellationToken);

                await context.SaveChangesAsync(cancellationToken);

                return(station.Id);
            }
            public async Task <Unit> Handle(UpdateStationCommand request, CancellationToken cancellationToken)
            {
                var entity = await context.Stations.SingleOrDefaultAsync(s => s.Id == request.Id, cancellationToken);

                if (entity == null)
                {
                    throw new NotFoundException(nameof(Station), request.Id);
                }

                entity.Name        = request.Name;
                entity.Altitude    = request.Altitude;
                entity.City        = request.City;
                entity.CountryCode = request.CountryCode;
                entity.Latitude    = request.Latitude;
                entity.Longitude   = request.Longitude;
                entity.Timezone    = request.Timezone;
                entity.StaticMap   = request.StaticMap;

                await context.SaveChangesAsync(cancellationToken);

                return(Unit.Value);
            }
            public async Task <MediatR.Unit> Handle(UpdateUserCommand request, CancellationToken cancellationToken)
            {
                var entity = await context.Users.SingleOrDefaultAsync(u => u.Id == request.Id, cancellationToken);

                if (entity == null)
                {
                    throw new NotFoundException(nameof(User), request.Id);
                }

                entity.AccessToken  = request.AccessToken;
                entity.ExpiresAt    = request.ExpiresAt;
                entity.RefreshToken = request.RefreshToken;
                entity.UpdateJobId  = request.UpdateJobId;
                entity.FeelLike     = request.FeelLike;
                entity.PressureUnit = request.PressureUnit;
                entity.Unit         = request.Unit;
                entity.WindUnit     = request.WindUnit;

                await context.SaveChangesAsync(cancellationToken);

                return(MediatR.Unit.Value);
            }