1

SQLAzureバックエンドを備えたAzureで実行されるASPMVC3を使用してWebアプリケーションを構築することを計画しています。Microsoftスタックを使用したいのですが、別のスタックに変更する予定はありません。WCFとWFの使用を検討していますが、将来的にはそうなるでしょう。

Entity Frameworkを使用するための従来のコードファーストアプローチを見ましたが、どちらかのアプローチを使用することに利点があるかどうかはわかりません。確かにそれぞれに利点がありますが、私にとっては、クラスがEFクラスから継承するかどうかは気にしません。私が欲しいのは、最も効率的な解決策を見つけることです。

誰かが私にどのアプローチが最善かもしれないかについてアドバイスをくれますか?

どうもありがとう

リチャード

4

4 に答える 4

1

これは実際には意見収集の質問であり、おそらく StackExchange の Programmers サイトに属している可能性がありますが、突き刺します。

私は間違いなく伝統的なアプローチの一種です。私にとって、データは重要です。それは最も重要です。さまざまなオブジェクト、レイヤー、アプリケーション、サービスが出現、消滅、進化します。しかし、データは残ります。これが、データベースを最初に設計する理由です。私の経験では、データは常に王様でした。

于 2011-01-09T19:37:33.037 に答える
0

Code First は「アーキテクチャ的に正しい」アプローチですが、開発の労力、価値、​​および速度を考慮する必要がある場合、現実はこれらの点で異なる傾向があります。

「モデル ファースト」アプローチを使用すると、はるかに高速で保守が容易になります。データベースの変更は、「データベースから再生成」を右クリックするだけで反映されます。プロパティの名前や型を変更し忘れても、奇妙なエラーがコードに忍び込むことはありません。

EF4 の新しい POCO サポートを使用すると、両方を少し持つことができると言われています。モデリング ツールを使用しながら、基本クラスの依存関係を削除できます。

このスレッドには多くの優れたリンクがあります:

Entity Framework 4 / POCO - どこから始めればよいですか?

于 2011-01-10T04:27:56.733 に答える
0

私にとっても最初にコードを書いてください。突然 Entity Framework が嫌いになり、NHibernate に切り替えたいと思った場合は、作業が大幅に軽減されます。

また、ドメイン レイヤーをデータ アクセス レイヤーから完全に分離することで、問題をより明確に分離できます。

それがまだ当てはまるかどうかは100%確信が持てませんが、コード生成、エンティティフレームワークの部分的なクラスの悪意がテスト時に問題を引き起こす可能性があると思います.

最初にコードを書いた方がずっと手間がかかりません。

于 2011-01-10T01:46:57.867 に答える
0

私はCode Firstアプローチを採用します。

Scott Guthrie によるこのすばらしいブログ投稿では、その利点について説明しています。

于 2011-01-09T15:02:35.033 に答える