Да, SQLMetal создает только файл сопоставления. Однако большинство операций CRUD тривиальны, когда вы настроили сопоставления в LINQ to SQL. Как правило, при использовании LINQ to SQL вы не будете кодировать такими методами, как ... Например, GetUserByID будет просто:
using (var dc = new YourDataContext) {
User u = dc.User.Single(u => u.ID == whateverID);
}
Кажется более подробным для действительно тривиальных операций, но как только вы делаете более сложные операции, он становится действительно мощным, очень быстрым.