2011-01-09 6 views
1

SQL AzureバックエンドでAzureで実行されるASP MVC3を使用してWebアプリケーションを構築する予定です。私はMicrosoftのスタックを使いたいし、別のスタックに変更する予定はありません。私はWCFとWFの使用を検討していますが、それは将来のことです。EF4、MVC 3、AzureとコードFirstまたはTraditional

エンティティフレームワークを使用する従来の方法とコードファーストのアプローチを見ましたが、いずれかの方法を使用する利点があるかどうかはわかりません。もちろん、それぞれに利点がありますが、私のクラスがEFクラスを継承しているかどうかは気にしません。私が望むのは、最も効率的なソリューションを見つけることだけです。

誰にでも、どのアプローチがベストであるかについてのアドバイスがありますか?私は、コードファーストアプローチで行くと思います

おかげで非常に多くの

リチャード

答えて

0

Scott Guthrieのこの偉大なblog postは、その利点を説明しています。

+0

感謝をリンク。私は既にCodeFirstの他のすべてのものと一緒にこれを読んでいます。それがどれほど良いと言っているのか、多くの人が私の状況に当てはまるとは思っていません。私が本当に知りたいのは、最初にコードを使用しないとどんな利点があるのでしょうか? – RichardAlanA

1

これは本当に意見収集問題の詳細です、おそらくStackExchangeのプログラマサイトへのより多くの属するが、私は刺してみよう:

私は間違いなく、伝統的なアプローチの種類の - 男です。私には、データが重要です。それが最も重要です。さまざまなオブジェクト、レイヤー、アプリケーション、サービスが登場し、進化します。しかし、データは残っている。だからこそ私のデータベースをまず設計するのです。私の経験では、データは常に王様でした。

0

コードは私にとっても最初です。あなたが突然Entity Frameworkを嫌ってNHibernateに切り替えることになった場合、あなたの手にかかる作業は大幅に減ります。

また、ドメインレイヤーとデータアクセスレイヤーを完全に分離することで、より洗練された懸念事項が分離されています。

私はまだそれが適用されているとは確信していませんが、私はエンティティフレームワークのコード生成、部分的なクラスのマルウェアがテスト時に問題を引き起こす可能性があると思います。

コードを最初に言及したのは、ずっと面倒ではありませんでした。

0

コード・ファーストは、「構造的に正しい」アプローチですが、開発の労力、価値、​​スピードを考慮する必要がある場合、現実はこれらの点で異なる傾向があります。

「モデルファースト」アプローチを使用する方が、はるかに迅速かつ簡単に管理できます。データベースの変更は "Regen from database"という簡単な右クリックで伝播し、プロパティ名や型を変更するのを忘れたときにコードに奇妙なエラーが入ることはありません。

あなたはEF4で新しいPOCOサポートを使用することができます。同時にモデリングツールを使用しているときには、基底クラスの依存関係を削除することができます

このスレッドでは良いリンクがたくさん:返信すると追加して時間を割いて

Entity Framework 4/POCO - Where to start?

関連する問題