Linqでクエリしたい(そしてLinqPadで実験したい)マスター詳細関係を持つ2つのテーブル(mysql)があります。問題は、Linq to SQL が次のクエリに対して正しい結果も SQL ステートメントも生成できないことです。
from m in masters
select new {
m.Code,
m.Total,
Value = m.details.Sum(d => d.Qty * d.Price * (1 - 6/100))
}
そしてもう一つ
from m in masters
select new {
m.Code,
m.Total,
Value = m.details.Sum(d => d.Qty * d.Price * 0.94)
}
最初のクエリは後者のように正しい結果を生成しません.LinqPadをチェックインした後の問題は、(1 - 6/100)
にコンパイルされた1.0
. 誰かが理由を説明できますか?