ソートされたアイテムのリストを取得する必要があります。ソート順は、アイテムの GUID の任意のリストに関連付けられます。つまり、1, 2, 3, 4だけでなく、3, 7, 2, 4 の場合もあります。
LINQ-to-SQL もストアド プロシージャも使用していません。
SQL Server が提供する順序でリストを取得し、C# コードで LINQ を使用して並べ替えることを提案しました。
これに代わる方法は、このような文字列を作成することです (このヒントに従ってください)。
select * from publishers
Order by (CASE City
WHEN 'Paris' THEN 1
WHEN 'Chicago' THEN 2
WHEN 'Boston' THEN 3
WHEN 'New York' THEN 4
ELSE 100 END) ASC, City DESC
このアプローチには一定の優れた点があることは認めざるを得ませんが、私は C# でデータ操作を行う方が好きです。他のアプローチに対する適切な反撃を思いつくことはできないので、それが機能していることを認めなければなりません。
ここでの欠点は何ですか?(もちろん、明らかな注射を除いて、それは私たちにとって問題ではありません。幸いなことに、セキュリティの問題について心配する必要はありません。)