经测试,用判断 x.Field(columnName) 等于 DBNull.Value 或 null 或 ToString() 为 Empty 等等 都不成功。
以下是 可行的 方法,调用 DataRow.IsNull(columnName)
var param = Expression.Parameter(typeof(T), "x");
MethodInfo IsNullmethInfo = typeof(System.Data.DataRow).GetMethod("IsNull", new Type[] { typeof(string) });
ConstantExpression expColumnName = Expression.Constant(columnName, typeof(string));
MethodCallExpression expCall1 = Expression.Call(param, IsNullmethInfo, expColumnName);