a sample project or test project for exercising those domain object classes,
typically a console application

(eventually, you will also have a web project, but this is beyond the
scope of this page)

This is called the canonical project structure. If you have
not read the page canonical project structure yet, please
do so. The following explanation will assume the
canonical project structure.

If you have a sample project that will use the domain
object classes, you can use the application's App.config
(App.config) for telling dbschema.exe what the
name of the database is. If you don't specify an App.config
file, dbschema.exe will generate a USE DatabaseName –
for first experiments this is easy to fix manually, of course.

The output file, the sql script for setting up the database,
is named (SetupDB.sql). It does not matter where you store it,
but we invoke dbschema.exe in the solution root, i.e.
the parent directory of all sub-projects. For the PhoneBook
project, this invocation looks like this:

The /basedirectory is the directory with the domain assembly (can be more than one)

The /verbose switch gives you more comprehensive error messages in the case something goes wrong

The config switch specifies which configuration file dbschema.exe shall use

If everything works out, dbschema.exe has no output.
Both /verbose and /config are optional. As explained above, dbschema.exe
will generate USE DatabaseName instead of USE PhoneBook (for example),
so that you have to fix the database name manually.