0

Entity Framework(または実際には最新のORM)の使用に関する賛否両論のリストを読んだとき、次の点が発生しないことに驚いています(自己引用):

強く型付けされたドメインエンティティを使用すると、コンパイル時に型チェックが可能になり、基本的にすべてのデータベース操作の検証が実行されます。これは、ADO.NETでは不可能なことです(インラインSQLまたはストアドプロシージャのどちらを使用する場合でも)。

私にとって、これはORMを使用する最大の利点の1つです。ADO.NETベースのアプリケーションを扱うときに私が定期的に遭遇する問題は、SQLからの実行時エラーです。静的チェックはこれを完全に排除します。

なぜこれが多くの開発者にあまり関係がないのかについて誰かが詳しく説明できますか?

4

2 に答える 2

0

ああ、それは素晴らしいです。

また、無料ではありません。EF は基本的に ADO.net の上に構築されており、リフレクションを使用して、厳密に型指定されたクラスと実際の列名の間を行ったり来たりするだけです。これは、レコードセットがかなり小さい場合は問題ありませんが、より大きなデータ セットを処理し始めると非常に顕著になります。通常、この余分なラグ タイムは重要ではありません。たとえば、DB が最初からデータを取得するのに 2 秒かかる場合、余分なミリ秒 (または 1 秒) がどのような違いを生むかということです。しかし、速度が非常に重要な状況があり、そのような状況では、ほとんどの場合、生の ADO を使用して独自の構造を作成する必要があります。

于 2013-02-09T15:20:25.743 に答える