0

Entity Framework (関連する場合は EF5) を使用して "X" 個のランダム レコードを取得する最良の方法は何ですか? 「X」の値は、これが使用される場所に基づいて設定されます。

EF に組み込まれているこれを行う方法はありますか、または結果セットをプルダウンしてから C# 乱数関数を使用してレコードをプルするのが最善です。または、私が考えていない方法はありますか?


偶然にも、さまざまな用途に使用する画像を格納するテーブルがあります (画像タイプ テーブルへの FK があります)。ホームページのカルーセルで使用する画像は、バリエーションを追加したいものです...したがって、それがどれほど「ランダム」であるかはあまり問題ではありません。常に表示されている同じ6枚ほどの写真から逃げようとしています。(また、テーブルとローカルストレージに画像を保存することについての議論/議論にはあまり興味がありません。)


解決策は、LINQ ステートメントを介して EF を使用するものである必要があります。これが直接可能でない場合、@cmdがコメントで推奨していることと同様のことをすることになるかもしれません。これはおそらく、レコード数を取得することです... PK をテストして、結果のオブジェクトが null でないことを確認しLIST、X 個のオブジェクトの PK を構築してフロントエンドに渡します。カルーセルは画像を遅延ロードするので、カルーセルで使用されるリストを作成するときに実際には画像は必要ありません。

4

1 に答える 1