そのため、ADO.NET Entity Framework は (ブログ エントリや請願の形で) 少し悪い報道を受けていますが、私は急いで判断を下したくありません。実験の時間は限られていますが、より経験的なフィードバックを得て、まだ誰かがそれを使っているのだろうかと思っていましたか?
最後に、長い間使用されており、ADO.NET Entity Framework よりも成熟している可能性がある NHibernate を使用することについてどう思いますか。
そのため、ADO.NET Entity Framework は (ブログ エントリや請願の形で) 少し悪い報道を受けていますが、私は急いで判断を下したくありません。実験の時間は限られていますが、より経験的なフィードバックを得て、まだ誰かがそれを使っているのだろうかと思っていましたか?
最後に、長い間使用されており、ADO.NET Entity Framework よりも成熟している可能性がある NHibernate を使用することについてどう思いますか。
NHibernate はより成熟している可能性があります。それが必ずしも「より良い」ソリューションであることを意味するわけではありません。しばらく仕事で使用していたので、個人的には NHibernate 以外のほとんどのものを使用することを好みます (移行がリモートで実行可能であれば、単純な SQL でさえも)。NHibernate によってスローされる何の意味もない (または何かを意味するが決して発生してはならない) エラー メッセージの数は、そのデフォルトの動作の一部 (Find で返されたオブジェクトごとに 1 回セッションをフラッシュするなど) と同様に、まったく驚異的です。 )。
個人的には、選択肢があるときは、すべてのデータベース作業に LINQ to SQL を使用しています。
ゼロ構成が SubSonic の主な利点である場合は、Fluent nHibernateまたは Entity Framework Code-Firstを見ることができます
Răzvan Panda からの更新: Fluent NHibernate は、コードによるマッピングを NHibernate 自体に含めることでほとんど廃止されました。次を参照してください: notherdev.blogspot.ie/2012/02/
最初の投稿から2年が経ちました。私が理解していることから、ADO.NET Entity Framework は .net 4 で成熟しました。このトピックに関する新しいフィードバックはありますか?
2008 年の最初のリリース以降に EF に追加された機能強化へのリンクは次の とおりです。 4-and-visual-studio-2010.aspx
更新:更新された EF について議論する素晴らしい仕事をしているスタック オーバーフローに関するこのスレッドを見つけました:
Microsoft は、ADO.Net Entity Framework が ORM ではないことをほぼ認めています (現在、参考文献が見つかりません)。したがって、Entity Framework をクエリ エンジンと考えると、明らかに優れた機能を備えています。ただし、完全な ORM ソリューションについては、別の場所を探すことをお勧めします。
次のブログ投稿は、この違いを裏付けているようです。
http://blogs.msdn.com/dsimmons/archive/2008/05/17/why-use-the-entity-framework.aspx
SubSonic、LinqToSql、LinqToEntities を使用しました。今、私はNHibernateを試しています。今のところ - 私は NHibernate が好きです (おそらく、十分に問題に遭遇していないためです)。それらすべての中で最悪 - LinqToEntities (もちろん、これは私の意見です)。
SubSonic に問題があります。SubSonic は、名前が同じでスキーマが異なるテーブルで窒息死しました。データベース構築のベスト プラクティスについては議論したくありません。なぜなら、そうするように呼びかけたわけではないからです。 ) )
私はエンティティが好きになりつつあります。すべてのエラー メッセージが何を意味するのかを理解するにはしばらく時間がかかりますが、慣れると本当に素晴らしい仕事をしてくれます。現時点での最大の欠点は、切断を実際にサポートしていないことです。