我想在除法后四舍五入列值:
DataColumn maxSpend = new DataColumn();
maxSpend.DataType = System.Type.GetType("System.Double");
maxSpend.Expression = string.Format("{0:0.00} / price", this.maxSpend);
有可能以某种方式在列表达式中使用 Math.floor() 还是有其他解决方案?
我想在除法后四舍五入列值:
DataColumn maxSpend = new DataColumn();
maxSpend.DataType = System.Type.GetType("System.Double");
maxSpend.Expression = string.Format("{0:0.00} / price", this.maxSpend);
有可能以某种方式在列表达式中使用 Math.floor() 还是有其他解决方案?
DataColumn-Expressions 中不允许使用 .NET 函数。最简单的方法是首先在 dbms 中执行此操作(如果您正在使用)。
例如在SQL-Server中:SELECT FLOOR(MaxSpend/Price)AS MaxSpend ...
.
另一种方法是循环通过 DataRows。例如:
foreach (DataRow row in tbl.Rows)
{
double price = row.Field<double>("price");
row["maxSpend"] = Math.Floor(this.maxSpend / price);
}