我在写的查询中遇到问题,由于某种原因,我用来存储十进制值的变量在小数点后返回 6 个值(它们大多为 0)。
我尝试了以下(以及使用 Math.Round 的不同组合),但没有成功。
Sales =
(from invhed in INVHEAD
... // Joins here
orderby cust.State ascending
select new Sale
{
InvoiceLine = inv.InvoiceLine,
InvoiceNum = inv.InvoiceNum,
...
NetPrice = Math.Round((inv.ExtPrice - inv.Discount) * (Decimal) (qsales.RepSplit / 100.0), 2, MidpointRounding.ToEven),
}).ToList<Sale>();
NetPrice 成员的值有 300.000000、5000.500000、3245.250000 等。
有什么线索吗?我似乎无法在网上找到有关此问题的任何信息。
编辑:
Decimal.Round 成功了(我忘了提到 NetPrice 成员是 Decimal 类型)。请看下面我的回答。