如何将我的LINQ转换为SQL?
我有这个LINQ声明:
int LimCol = Convert.ToInt32(LimitColis);
result = oListTUP
.GroupBy(x => new { x.Item1, x.Item2, x.Item3, x.Item4, x.Item5 })
.Select(g => new
{
Key = g.Key,
Sum = g.Sum(x => x.Item6),
Poids = g.Sum(x => x.Item7),
})
.Select(p => new
{
Key = p.Key,
Items = Enumerable.Repeat(LimCol, p.Sum / LimCol).Concat(Enumerable.Repeat(p.Sum % LimCol, p.Sum % LimCol > 0 ? 1 : 0)),
CalculPoids = p.Poids / Enumerable.Repeat(LimCol, p.Sum / LimCol).Concat(Enumerable.Repeat(p.Sum % LimCol, p.Sum % LimCol > 0 ? 1 : 0)).Count()
})
.SelectMany(p => p.Items.Select(i => Tuple.Create(p.Key.Item1, p.Key.Item2, p.Key.Item3, p.Key.Item4, p.Key.Item5, i, p.CalculPoids)))
.ToList();
}
它运行良好,但不知何故想推它并且它变得太复杂,所以我想将它转换为Pure SQL。
我已经尝试过SQL Profiler和LinqPad,但都没有向我展示SQL。
如何查看My LINQ中的SQL代码?
提前谢谢。
答案 0 :(得分:1)
以下是来自MSDN http://msdn.microsoft.com/en-us/library/Bb386961(v=VS.90).aspx
的示例请注意,在他们的示例中,变量db是DatabaseContext。