GQ08 VII: Linq to Sql mapping

Linq to Sql utilise des informations de mapping pour générer les requêtes Sql.
Comment récupérer ces informations de mapping pour notre propre usage ?

Imaginons un scénario simple pour générer dynamiquement les colonnes d'une grille (en mettant des combos pour les relations par exemple).

 var db = new NorthwindDataContext();
var q =
    from c in db.Customers
    select c;

grid.Columns.Add(...);
grid.Columns.Add(...);
...

grid.ItemsSource = q.ToList();