SqlMetal is a command line generator that builds the OR types used by
LINQ to SQL. It reverse engineers a given database.
C:\Program Files\LINQ Preview\Bin>sqlmetal.exe
usage: sqlmetal [options] [<input file>]
options:
/server:<name> database server name
/database:<name> database catalog on server
/user:<name> login user id
/password:<name> login password
/views extract database views
/functions extract database functions
/sprocs extract stored procedures
/xml[:file] output as xml
/code[:file] output as source code
/map[:file] generate xml mapping file instead of attributes
/language:xxx language for source code (vb,csharp)
/namespace:<name> namespace used for source code
/pluralize auto-pluralize table names
/dataAttributes auto-generate DataObjectField and Precision attributes
/timeout:<seconds> timeout value in seconds to use for database commands
examples:
To generate an XML file with extracted SQL metadata
sqlmetal /server:myserver /database:northwind /xml:mymeta.xml
To generate an XML file with extracted SQL metadata from an .mdf file
sqlmetal /xml:mymeta.xml mydbfile.mdf
To generate source code from an XML metadata file
sqlmetal /namespace:nwind /code:nwind.cs /language:csharp mymetal.xml
To generate source code from SQL metadata directly
sqlmetal /server:myserver /database:northwind /namespace:nwind /code:nwind.cs /language:csharp
An alternative entity generator that uses XSL as a template language by Dan Radu can be found here:
DLINQ Entity Generator.