ここでのトレードオフは、潜在的なパフォーマンスとコード保守性のすべての最後のビットを鳴らすことです。使用しない列を戻すことでCPUサイクルが浪費されることは疑いありません。質問は次のようになります。次に、より高価なもの、無駄なCPUサイクル、またはプログラマーのコードの作成と保守の時間を考慮する必要があります。
性能要件が非常に高いシステムで作業している場合は、ORM /工場コードを最適化するために非常にお得です。一方、ビジネスアプリケーションの部門ラインを構築していて、スコアや何百ものORMクラスを持っているなら、おそらくプログラマー(そしてそれらを支払う必要がある人)にとっては単純な方が良いでしょう。数回の心配を止めてください。これは、Entity Framework(または他の多くのもの)のように、コード生成を使用してORMコードの大部分を足場にしたフレームワークを使用すると、さらに多くのケースになります...
システムを使用せずに構築する場合どのような種類のコード生成フレームワークでも、データアクセス層がベアメタルSQLにかなり近い場合は、必要なものだけを引き出すことは良いアドバイスです。数千人または何百万人もの人々が同時に使用する予定のアプリケーションを構築する場合は、まずSQLを最初から調整します。一方、ORMフレームワークとRADを使用するアジャイル・ショップで作業する場合、数十のSQLを書くことは生産性に欠けます。
[tag:c#]と表示されたのはなぜですか?これは、SQL /クエリ作成の質問の多くです。 –
初期化時に主キーと共通/索引フィールドを格納する場合は、「その他の」プロパティで遅延評価を実装することができます。 PKを利用できるので、インデックスシーク(良い&高速)でなければなりません。 – billinkc