我正在尝试做类似的事情:
Session.Query<VoiceMailNumber>()
.Where(x => (x.From.CompareTo(number) > 0) &&
(x.To.CompareTo(number)) > 0)
但是抛出System.NotSupportedException。
From和number都是字符串。
任何解决方案?
答案 0 :(得分:1)
这解决了它:
Session.CreateCriteria(typeof(VoiceMailNumber))
.Add(Expression.Le("From", number))
.Add(Expression.Ge("To", number))
.UniqueResult<VoiceMailNumber>();
我对此解决方案并不满意,但由于无法使用查询或查询来比较字符串,因此必须这样做。
答案 1 :(得分:0)
您可以使用以下语法完全比较字符串:
Session.Query<VoiceMailNumber>()
.Where(x => x.From==number)
.And(x=>x.To==number);
转换为:
select * from VoiceMailNumber where From='123456' and To='123456'