コード例 #1
0
ファイル: Datablase.cs プロジェクト: xSke/BlaseballData
        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);
        }