我有相对简单的查询,我不知道如何在 EF 中表达:
SELECT BrandName,
CASE BrandName
WHEN 'LG' THEN 1
WHEN 'Samsung' THEN 2
WHEN 'Sony' THEN 3
ELSE 100
END as BrandWeight
FROM Brands
基本上我需要返回带有每个品牌“重量”的品牌列表 - 重量是在运行时定义的(以及带有重量的品牌列表)。
请注意,这是一个非常简化的示例。实际上,我们有一个复杂的电子商务网站,其中包含大量遗留代码 - 最近客户要求添加一个选项以首先显示某些产品 - 无论是基于品牌还是其他一些条件。而且我们有很多我不想触及的逻辑——分页、搜索等——所以我的想法是将“权重”添加到初始“选择”查询中,然后按“权重”排序,然后做剩下的的逻辑。