約 20 のプロパティを持ついくつかの大きなエンティティがあり、場合によってはそこから DropDownLists を作成する必要があります。SelectList では、クエリによって返された元の 20 個のプロパティのうち、2 つのプロパティ (ID と名前) のみを使用して終了します。
私はこれをロードするためにこのメソッドを使用しています:
new SelectList(db.Contacts.AsNoTracking().Where(x => x.idTenant == CurrentTenantID), "ContactId", "Name");
これは正常に機能していますが、Contacts dbset のクエリは明らかにすべての列を返しています。データベースへのクエリを軽くするために、列を 20 から 2 に狭めるにはどうすればよいですか?
この場合だけデータベースでストアド プロシージャまたはビューを実行し、これを DropDownList の作成に使用できることはわかっていますが、Entity Framework を直接使用してそれを行う別の方法はありますか?
これは連絡先だけでなく、いくつかのエンティティで発生するため、このシナリオを処理するための明確な戦略が必要です。