Retorne várias colunas agregadas no LINQ

Gostaria de traduzir o seguinte SQL em LINQ:

SELECT
    (Select count(BidID)) as TotalBidNum,
    (Select sum(Amount)) as TotalBidVal
FROM Bids

Eu tentei isso:

from b in _dataContext.Bids
select new { TotalBidVal = b.Sum(p => p.Amount), TotalBidNum = b.Count(p => p.BidId) }

mas obtém um erro "Os lances não contêm uma definição para" Sum "e não foi encontrado nenhum método de extensão" Sum "que aceite um primeiro argumento do tipo" Lances ".

Como posso fazer isso no LINQ?

Obrigad

CONCLUDING:

A resposta final foi:

var ctx = _dataContext.Bids;

var itemsBid = (from b in _dataContext.Bids
               select new { TotalBidVal = ctx.Sum(p => p.Amount), TotalBidNum = ctx.Count() }).First();

questionAnswers(4)

yourAnswerToTheQuestion