当 table 为空时获取最大日期和 return 默认日期

Getting maximum date and return default date when table is empty

如果 table 没有行,如何 return 日期 "1900/12/12 00:00:00"?我正在尝试获取最大交易日期,如果 table 中有行,它会很好地工作,否则我会收到一条错误消息,因为 ToString().

中的日期格式
string d = context.AllTransactions.Where(t => t.ID == OID)
                  .Max(t => t.TransactionDate).ToString("dd/MM/yyyy HH:mm:ss");

TransactionDateNOT NULL datetime 字段。

.Max 之前使用 DefaultIfEmpty 方法(因为它是实体的 linq,您将无法创建新的交易对象,然后首先仅投影日期):

var result = context.AllTransactions.Where(t => t.ID == OID)
                    .Select(t => t.TransactionDate)
                    .DefaultIfEmpty(new DateTime(1900,12,12)).Max();