方法 X 不支持对 SQL 的转换 - 布尔值和日期时间

2024-05-20

有人建议如何使 LINQ to SQL 支持此功能吗?

public bool IsEnabled()
{
    return !this.Disabled && 
           ((!this.EnabledFrom.HasValue || this.EnabledFrom < DateTime.Now) && 
            (!this.EnabledTo.HasValue || this.EnabledTo > DateTime.Now));
}

Disabled是一个bool,EnabledFrom和EnabledTo是DateTime?以及所有数据库字段。


做你的IsEnabled方法返回一个表达式。

看这里:http://www.atrevido.net/blog/2007/09/05/Calling+Custom+Methods+In+LINQtoSQL.aspx http://www.atrevido.net/blog/2007/09/05/Calling+Custom+Methods+In+LINQtoSQL.aspx

如下所示(未经测试):

static Expression<Func<Account, bool>> IsEnabled = a =>
    !a.Disabled && 
    ((!a.EnabledFrom.HasValue || a.EnabledFrom < DateTime.Now) && 
     (!a.EnabledTo.HasValue || a.EnabledTo > DateTime.Now));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

方法 X 不支持对 SQL 的转换 - 布尔值和日期时间 的相关文章

随机推荐