public async Task WriteIdolsUpdate(IdolsUpdate update) { var filter = Builders <IdolsUpdate> .Filter.Eq(x => x.Id, update.Id); var model = Builders <IdolsUpdate> .Update .SetOnInsert(x => x.Payload, update.Payload) .Min(x => x.FirstSeen, update.FirstSeen) .Max(x => x.LastSeen, update.LastSeen); await _idolUpdates.UpdateOneAsync(filter, model, new UpdateOptions { IsUpsert = true }); await UpdateIdolsHourly(update); }