Quando si crea un DAL utilizzando SQLMetal oppure il LINQ to SQL Designer, la classe prodotta contiene anche tutte le informazioni sullo schema del database. Grazie ad esse e ai metodi esposti dalla classe DataContext, è sufficiente invocare un paio di metodi per verificare l'esistenza del database e ricrearlo con la sua struttura originale qualora non sia presente sul server:
using (DatabaseDataContext db = new DatabaseDataContext())
{
if (!db.DatabaseExists())
db.CreateDatabase();
}
Questo codice si rivela utile, ad esempio, durante la prima esecuzione di un programma, per creare la base di dati che sarà poi utilizzata dal software.