0

まず、NHibernateは初めてです。

クライアントにC#とMVC3を使用して、VS2010でアプリケーションを作成しています。クライアントには数百のテーブルを含む巨大なデータベースがあり、アプリケーションはそのうちの2つだけからデータを読み取る必要があります。

クライアントがアプリケーションをWebサーバーにインストールするときは、データベースへの接続文字列を指定する必要があります。また、テーブルデータの名前を(web.configなどで)読み取る必要があります。アプリがデータを読み取るテーブルの列は既知ですが(基本的にはidといくつかのフィールドです)、テーブルの名前は不明です(テーブルの名前は「CompanynameTablename」の形式です)。クライアントによって指定されます。

これはNHibernateでも可能ですか?もしそうなら-どうすればそれを達成できますか?

4

1 に答える 1

3

はい、可能です。あなたの質問に正しく答えた場合は、高度に構成可能なマッピングを作成する必要があります。そのためには、標準の hbm xml ファイルではなく、コード ソリューションによる N H 3.x マッピングを優先できます。これにより、テーブルの名前だけを cfg ファイルに入れ、マッピング戦略全体をコードで記述することができます。とにかく、NH の使用に慣れていない場合は、最終的なソリューションを実装する前に、自分自身をトレーニングするためだけに、さらに標準的なソリューションを実行する可能性があります。とにかく気をつけてください。NH は OR/M であり、マップの関連付けとコレクション、アイデンティティ マップ、自動永続化などに使用するだけでメリットが得られます。Dapperの方がおそらく役立つので、Micro Orm の使用も検討してください。

于 2012-05-07T10:21:10.870 に答える