在这里,我需要将精度转换为整数.
示例:
obj.DayDifference = !string.IsNullOrEmpty(reader["DateDiff"].ToString()) ?
(Int32)reader["DateDiff"] : 0;
Run Code Online (Sandbox Code Playgroud)
类型:
DayDifference 类型 int
DateDiff类型double precision的database table.
错误:
指定演员表无效
你在做什么相当于:
object x = 32.5;
int y = (int) x;
Run Code Online (Sandbox Code Playgroud)
你不能那样做 - 当你取消装箱时,你必须取消装箱到实际类型的值1.
所以你需要:
object x = 32.5;
int y = (int) (double) x;
Run Code Online (Sandbox Code Playgroud)
转换为doubleunboxes,int转换为转换double为int.您可以在代码中执行相同的操作:
(Int32)(Double) reader["DateDiff"] : 0;
Run Code Online (Sandbox Code Playgroud)
1好吧,模数一些东西.CLR允许您将基础类型等的inta uint或unbox取消打包到枚举类型int.
| 归档时间: |
|
| 查看次数: |
977 次 |
| 最近记录: |