LINQ para SQL versão do GROUP BY WITH ROLLUP

Eu estou tentando reescrever alguns antigos SQL em LINQ to SQL. Eu tenho um sproc com um GROUP BY WITH ROLLUP mas não tenho certeza qual seria o equivalente LINQ. LINQ tem um GroupBy, mas não parece que ele suporta ROLLUP.

Um exemplo simplificado dos resultados que estou tentando obter seria algo assim:

+-----------+---------------+--------------------+
|   City    |  ServicePlan  |  NumberOfCustomers |
+-----------+---------------+--------------------+
| Seattle   |  Plan A       |                 10 |
| Seattle   |  Plan B       |                  5 |
| Seattle   |  All          |                 15 |
| Portland  |  Plan A       |                 20 |
| Portland  |  Plan C       |                 10 |
| Portland  |  All          |                 30 |
| All       |  All          |                 45 |
+-----------+---------------+--------------------+

Alguma idéia de como eu poderia obter esses resultados usando o LINQ to SQL?

questionAnswers(4)

yourAnswerToTheQuestion