我正在关注如何使用lightswitch系列,并将代码从VB转换为C#
我遇到了一个计算属性,它将两个字段相乘并返回结果
错误是“无法隐式转换类型'小数?”为'十进制'。存在显式转换(您是否错过了演员?)“。
我不确定为什么我需要一个演员,因为他们都属于同一类型
thanks,
Jason
VB代码
Private Sub LineItemTotal_Compute(ByRef result As Decimal)
result = Me.Quantity * Me.Price
End Sub
C#代码
private void LineItemTotal_Compute(ref decimal result)
{
result = this.Quantity * this.Price;
}
答案 0 :(得分:0)
您的属性为decimal
?
s(可为空)。
如错误所述,您不能将可空小数隐式转换为普通(不可为空)小数。
相反,如果?? 0
为空,您可以写0
来合并到{{1}}。
但是,您应该考虑使其他列不可为空,以完全避免这个问题。