当以下的IQueryable
被枚举时,会发生异常:
from record in dataContext.SomeTable
select Convert.ToDecimal(record.nullableDecimalColumn);
错误是一个"InvalidOperationException":
"null" 值不能分配给类型为 decimal 的成员,decimal 是非可空值类型。
"Convert.ToDecimal" 的文档说明它将 "null" 转换为 "0",因此看起来应该可以正常工作。
Convert.ToDecimal
的文档从未说明在LINQ-SQL
中它会将null
转换为0
,我认为这非常具有误导性。 - Suraj Singh