私はNHibernateで作業しています。データを持ち運ぶためにはDTOを生成する必要があります。私は手でそれをしたくありません。したがって私は、私を助けるためのショートカットやツールを探しています。私は、データベーステーブルを反映するオブジェクトを生成する簡単なツールを見つけることを望んでいました。これらのオブジェクトのプロパティは、データベーステーブルと同じ名前と同等の型を持ちます。コード生成 - データベーステーブルを参照してDTOを生成する。
答えて
http://summerofnhibernate.com/のセッションの1つ、具体的にはセッション08:データベース駆動モデリングの効率的なテクニックを見ながら探していたものが見つかりました。
彼が使用しているツールは、MyGenerationと呼ばれ、データベーステーブルを見てDTOを作成します。
データベースを参照して型を作成するツールは、ORM(Object Relational Mapper)と呼ばれます。 Entity FrameworkとLLBLGENは両方とも、無料でも商用でも利用できます。あなたはすでにあなたのタイプを持っている場合は
、あなたはのDTOに変換するAutoMapperを使用することができます。
AutoMapperは、オブジェクトのオブジェクトマッパーです。オブジェクト - オブジェクトマッピングは、あるタイプの入力オブジェクトを異なるタイプの の出力オブジェクトに変換することにより、 によって動作します。 AutoMapperは、 を提供して、 のタイプAをタイプBに変換する方法を説明しています。 AutoMapperの確立された規則に従う限り、ほぼゼロ設定はマップする必要があります。 2つのタイプ。
私の質問はもっと明確になるように更新しました。私はすでにNHibernateを使用しています。私はDTOを生成する必要があり、私は手でそれをしたくありません。したがって私は、私を助けるためのショートカットやツールを探しています。 –
AutoMapperは、既にマップするオブジェクトを持っている場合に適しています。 –
NHibernateを使用している場合、あなたはすでにオブジェクトを持っていますか? –
Visual Nhibernateは、データベーススキーマからドメインオブジェクトを生成できます。これらのオブジェクトを変更して、必要なDTOで終わることができます。両方のオブジェクトタイプを取得したら、Mitchのアドバイスに従い、EmitMapperやAutoMapperのようなツールを使ってDomainオブジェクトをDTOSに自動的にマッピングできます。
- 1. データベーステーブルから参照番号を生成
- 2. ビルド中のT4コード生成、カスタムアセンブリ参照
- 3. Hibernateコード生成外部キー参照オブジェクト
- 4. スクリプト#、参照されるライブラリのコードを生成する
- 5. Java/Flex ORM/DTO生成ツール
- 6. gsoapでXMLデータを生成してC++コードを生成する
- 7. 参照クラスを動的に生成
- 8. ブースト-pythonの参照を生成
- 9. Jackson:参照付きスキーマの生成
- 10. ヘッダーファイルを参照してDLLを参照するアプリケーションを作成するときにエラーが発生する
- 11. 自分自身を参照するクラスを生成する
- 12. clone()はイベントハンドラの別の参照を生成しますか?
- 13. wcfの参照が正しく生成されていない
- 14. グリッドにボタンを生成して配置し、x、y座標で参照する
- 15. SQL Server:参照列を生成する方法
- 16. エラーを生成するfstreamオブジェクトへの参照
- 17. WCFへのWebアプリケーション参照はプロキシクラスを生成しません。
- 18. C#コード生成
- 19. クワッドメッシュ生成コード
- 20. コード生成:カスタムコントローラテンプレート
- 21. エンティティからDTOを生成するツールはありますか?
- 22. VS 2015でのサービス参照の生成中にエラーが発生する
- 23. Rails 3:偽のデータを生成してDBを生成する
- 24. 複数のレコードを参照するデータベーステーブル
- 25. データベーステーブルの名前とフィールドの定数を生成しますか?
- 26. JAXB XJCコード生成
- 27. argouml PHPコード生成
- 28. エンティティフレームワークのコード生成
- 29. Javaコードの生成
- 30. コード生成のテクニック
T4の使用を検討してください。 –
@MichaelMaddox私はT4を見ましたが、それを行う方法を正確に見つけることができませんでした。私がやろうとしていることをT4を使って行う方法の例はありますか? –
は完璧な例ではありませんが、ここでそのアイデアを得ることができます:http://stackoverflow.com/questions/2223421/t4-template-to-create-multiple-html-for-example-output-files-per-table- from/3070406#3070406 –