我有一个LINQ从SQL查询返回排序的行。 例如,它会返回:1 1 1 1 1 1 1 1 2 2 2 3 3 3 3 3 4 4 4 4 我正在寻找一种方法告诉LINQ切割&粘贴所有的1,并将其放置在3的,所以它会看起来2 2 2 3 3 3 3 3 1 1 1 1 1 1 1 4 4 4 4。如何重定位Linq行与逻辑
什么是最有效的方法来重新定位它的指针? (不选择&删除&复制)
感谢
我有一个LINQ从SQL查询返回排序的行。 例如,它会返回:1 1 1 1 1 1 1 1 2 2 2 3 3 3 3 3 4 4 4 4 我正在寻找一种方法告诉LINQ切割&粘贴所有的1,并将其放置在3的,所以它会看起来2 2 2 3 3 3 3 3 1 1 1 1 1 1 1 4 4 4 4。如何重定位Linq行与逻辑
什么是最有效的方法来重新定位它的指针? (不选择&删除&复制)
感谢
尝试
query.OrderBy(x => x == 1 : 3.5 ? (float)x);
什么是3.5 for? – Himberjack
的值介于3和4之间,因此,1会陷入3和4之间 – Jimmy
@Himberjack只是为了调整值“1”的订单权重;您可以选择大于3但小于4的任何值,否则不会影响整体订单。 –
我会做的LINQ到SQL查询,像这样:
var query = from x in context.Table
let Order = x.RowNum == 1 ? 3.5 : x.RowNum
orderby Order
select x;
什么是3.5 for? – Himberjack
@Himberjack - 3.5用于排序,你希望1记录出现在3之后,但在4之前。你可以使用3-4之间的任何数字,我选择3.5 – Aducci
你必须不那么具体地说你的问题(即,一般说明你想要达到的目标)。 – jason
我想采取某些行(回答特定查询)并将它们重新放置在数据集中 – Himberjack
什么标识要移动的行?你如何指定你想要搬迁的地方? – jason