C#Mongodb首先通过比较字段值来查找

时间:2014-05-09 14:49:40

标签: c# mongodb

我试图找回我在同一记录中比较2个字段值的第一条记录,但是我得到了一个ArgumentException {" Unsupported where子句:(x.CharCount!= x.Body。长度)"}

有关如何纠正此问题的任何建议? 更新:     最终结果是获取第一条记录,其中charcount字段不等于body字段的长度。有没有办法用和查询,不需要使用lambda表达式?

post = collection.AsQueryable<Post>().First(x => x.CharCount != x.Body.Length);

这是类结构

class Post
{
    public ObjectId Id { get; private set; }
    public string Title { get; set; }
    public string Body { get; set; }
    public int CharCount { get; set; }
    public IList<Comment> Comments { get; set; }
}

public class Comment
{
    public DateTime TimePosted { get; set; }
    public string Email { get; set; }
    public string Body { get; set; }
}

1 个答案:

答案 0 :(得分:1)

似乎在数据库端不支持string.length == int value。尝试从db获取值并编写您的查询,如下所示:

post = db.GetCollection<Post>().Linq().First(x => x.CharCount != x.Body.Length);