以下行:
String itemid = reader1.IsDBNull(itemid_Index) ? null : reader1.GetString(itemid_Index);
Run Code Online (Sandbox Code Playgroud)
给我一个运行时错误:
无法将"System.Double"类型的对象强制转换为"System.String"类型
我已经尝试将线路更改为:
Double itemid = reader1.IsDBNull(itemid_Index) ? (Double?)null : reader1.GetDouble(itemid_Index);
Run Code Online (Sandbox Code Playgroud)
但它给出了以下设计时错误:
不能隐式转换类型'double?' '加倍'.存在显式转换(您是否错过了演员?)
有任何想法吗?
你不能指定null一个double.你要么需要使用double?:
Double? itemid = reader1.IsDBNull(itemid_Index) ? (Double?)null : reader1.GetDouble(itemid_Index);
Run Code Online (Sandbox Code Playgroud)
或使用其他一些值来表示"null":
Double itemid = reader1.IsDBNull(itemid_Index) ? Double.MinValue : reader1.GetDouble(itemid_Index);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
79 次 |
| 最近记录: |