Bulk Delete with EF4

So to delete all records in a table T, we first have to load every entity mapped on this table, to delete all of them and to SaveChanges (=> n delete queries in DB). Not great!

How to do it better?

In this case, Microsoft advises to use stored procedure but I think that it sucks! Indeed, with SP, it is immediately executed (not on context.SaveChanges() and so not on context.SaveChanges transaction) and it does not synchronize context cache (ObjectStateManager).