我正在使用System.Linq.Dynamic进行一个项目,该项目要求用户选择在运行时选择/投影的属性。
所以,我有这样的查询:
var query = db.Users.Select("New(UserId, Username, Groups.Max(DateInserted) AS DateInserted)");
DateInserted列不为null,但并非所有用户都有组。 因此,当返回没有组的用户时,我收到以下错误:
"The cast to value type 'DateTime' failed because the materialized value is null. Either the result type's generic parameter or the query must use a nullable type."
我可以在查询中做些什么吗?我不能让这个列可以为空。
感谢您的帮助。
答案 0 :(得分:0)
转换为可空类型DateTime?像这样:
var query = db.Users.Select("New(UserId, Username, DateTime?(Groups.Max(DateInserted)) AS DateInserted)");