Поиск пользователей, а затем создание предисловия к поиску каждого пользователя. Данные транзакций потребуют много усилий и могут убить вашу производительность.
Этот тип кода сделает ваш API довольно медленным и может привести к исключениям времени ожидания. лучший способ - объединить обе таблицы и просто получить результат из объединенного списка. Примерно так будет лучше.
context.Users.Join(
contex.Transactions,
x => x.MemberId,
xm => xm.MemberId
(x,xm) => new {Users = x, Transactions = xm }
).Select(p => p.Transactions.Amount).Sum()
Это облегчит работу вашего приложения, и вам не нужно будет каждый раз делать запрос.