c# - 如何将十进制变量转换为可空类型
问题描述
我有以下财产:
public decimal PaidAmount { get; set; }
以及与该属性相关的以下功能:
var PreviousPaidAmount = _db.SEPayments.Where(v => v.Invoice == items).Select(c => c.PaidAmount).FirstOrDefault();
SEPayment del = _db.SEPayments.Where(a => a.Invoice == items).FirstOrDefault();
if (PreviousPaidAmount == null)
{
break;
}
else
{
PreviousPaidAmount = _db.SEPayments.Where(v => v.Invoice == items).Select(c => c.PaidAmount).FirstOrDefault();
var Paid = del.PaidAmount;
Paid -= PreviousPaidAmount;
_db.Entry(del).State = EntityState.Modified;
_db.SaveChanges();
}
我想将变量 PreviousPaidAmount 转换为可为空的类型 decimal 而不对属性进行任何更改。我是初学者,任何帮助将不胜感激
解决方案
一种方法是将Select
调用更改为:
.Select(c => (decimal?)c.PaidAmount)
这将使Select
调用产生一个IEnumerable<decimal?>
,这意味着FirstOrDefault
它将null
根据您的需要作为默认值产生。
推荐阅读
- c# - 从 Azure Blob 存储下载大文件,对其进行处理并发送回客户端
- python - Python Selenium 无法单击表单中的“保存”按钮
- java - PHP中关于OOP的几个错误
- python - 如何修复“django 频道”,无法建立密码学?
- firebase - 颤动的火力基础 MissingPluginException
- python - 我怎样才能只写没有文字的pos标签?
- reactjs - 每次组件在 React.js 中呈现时,useCallback 钩子都会创建一个函数吗?
- python - Python,while循环在一次迭代后停止
- pandas-resample - 上采样数据框
- wordpress - 我正在尝试向我的 WordPress 网站添加弹出模式,但无法正常工作