var preResults = (from c in db.RATEPROCESSes
join b in db.BATCHes on c.BATCHKEY equals b.id
where c.MANIFESTDATE >= DateTime.Parse(fdate) && c.MANIFESTDATE <= DateTime.Parse(sdate) && c.ACCOUNTNBR == accountno
select new { Pieces = b.pieces, ACCOUNTNBR = c.ACCOUNTNBR, Manifestdate = c.MANIFESTDATE, BATCHKEY = c.BATCHKEY })
var results=preresults.Select(x => new Batch_RateProcess { ACCOUNTNBR = x.ACCOUNTNBR,
Pieces = x.Pieces, Manifestdate = DateTime.Parse(x.Manifestdate.ToString()),
BATCHKEY = x.BATCHKEY.ToString()})
.GroupBy(rateProcess=>rateProcess.ACCOUNTNBR);