私はSubSonicの大ファンです。適切に作成されたバッチ/CMD ファイルは、データベースのオブジェクト モデル全体を数分で生成できます。それを独自の DLL にコンパイルし、必要に応じて使用できます。素晴らしいモデル、素晴らしいツール。このサイトは ASP.NET 契約のように聞こえますが、一般的に言えば、UI フレームワーク (私はそこそこがっかりしています) やアプリケーション レベルの自動生成ツールを使用しないのであれば、どこでも素晴らしく機能します。 .
記録のために、ここで私がそれを操作するために使用するコマンドのバージョンを示します (最初にあまり苦労しなくて済むように):
sonic.exe generate /server [servername] /db [dbname] /out [outputPathForCSfiles] /generatedNamespace [myNamespace] /useSPs true /removeUnderscores true
これは毎回実行されます...次に、そのディレクトリから DLL をビルドします。これは NAnt プロジェクトの一部であり、CruiseControl.NET によって開始されます。私はそれを WinForms、ASP.NET、さらにはいくつかのコマンドライン ユーティリティで使用しています。これにより、依存関係が最も少なくなり、「移植性」が最大になります (関連するプロジェクト間、EG)。
ノート
上記は現在、1年以上前のものです。私はまだ SubSonic に大きな愛着を持っていますが、.NET 3.5 で作業する余裕があるときに LINQ-to-SQL に移行しました。.NET 2.0 では、まだ SubSonic を使用しています。したがって、私の新しい公式アドバイスは、プラットフォームのバージョンに依存します。.NET 3+ の場合は、受け入れられた回答を使用してください。.NET 2.0 の場合は、SubSonic を使用します。