// MongoDB driver for C# doesn't support Date.Date comparison. public async Task <UInt256> SumDailyRequestsTotalValueAsync(DateTime date) { var previousDate = date.AddDays(-1); var nextDate = date.AddDays(1); var requests = await EthRequests.AsQueryable() .Where(r => r.RequestedAt > previousDate && r.RequestedAt < nextDate).ToListAsync(); if (!requests.Any()) { return(0); } var totalValue = UInt256.Zero; foreach (var request in requests) { totalValue += request.Value; } return(totalValue); }
public Task AddAsync(EthRequest request) => EthRequests.InsertOneAsync(request);
public Task UpdateAsync(EthRequest request) => EthRequests.ReplaceOneAsync(r => r.Id == request.Id, request);
public Task <EthRequest?> GetLatestAsync(string host) => EthRequests.AsQueryable().Where(r => r.Host == host).FirstOrDefaultAsync() !;