You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何正确编写表达式实现Litr与Total值的相加?

问题解答

首先直接说结论:Summa= Total + Litr 直接这么写可能会报错,因为Total是可空整数类型(int?),当DataEnters里没有符合条件的行时,Total会是null,这时候和非空的int类型Litr相加会触发编译错误。

正确的写法分两种情况:

  • 情况1:如果希望Total为null时按0计算
    用空合并运算符??把null替换成0,再和Litr相加:

    public int Summa => (Total ?? 0) + Litr;
    

    比如Total是null、Litr是10,结果就是10;Total是20、Litr是10,结果就是30。

  • 情况2:如果希望Summa也保持可空(Total为null时Summa也为null)
    可以直接让Summa成为可空类型,C#会自动把Litr转为可空类型参与计算:

    public int? Summa => Total + Litr;
    

    这种情况下,如果Total是null,Summa也会是null;如果Total有值,就正常相加。

内容的提问来源于stack exchange,提问作者Mike

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 19:12:31