嘿,我正在尝试创建Expression<Func<T, bool>>
一个字符串属性被转换/转换为 DateTimeOffset 以便可以对其执行 DateTimeOffset 操作。
我们使用 Linq2SQL 作为我们的数据提供者,它确实支持将字符串转换为 DateTimeOffset 的 SQL 等价物。理想情况下,我希望表达式直接在 IQueryable 数据源内部进行评估,而不是作为 IEnumerable 在内存中进行评估。
请参阅下面的示例,了解我到目前为止所做的尝试:
public class MyClass
{
public string MyValue;
}
Expression<Func<MyClass, bool>> filter = mc => DateTimeOffset.Parse(mc.MyValue) > new DateTimeOffset(2007,1,1);
不幸的是,过滤器的这种定义会导致内存评估。