如何执行ObjectQuery <t> </t>

时间:2010-09-02 19:22:57

标签: linq-to-entities sql-like tilde objectquery

Linq to Entities使用实现IQueryable的ObjectQuery。我通常使用IQueryable方法来过滤我的数据,但今天我需要创建一个特殊的LIKE语句。框架一直在思考它的智能和“转义”我的通配符“%”与波形符,这使得我的特殊LIKE语句无效。因此,在挖掘之后,我发现ObjectQuery有一个Overfile,它允许你传递一个字符串和ObjectParameters。我已经完成了这个,但它没有像IQueryable那样执行。当我运行应用程序时,在此代码被命中后没有任何反应。没有错误,也没有对数据库的命中,所以我知道我创建的查询实际上并没有执行。

如何执行这只小狗?

public IQueryable<tbl_Path> GetPathsByWildCardSearch(string searchTerm)
{
    return this.ObjectContext.tbl_Path
        .Where("FullPath NOT LIKE @p0 and FullPath LIKE @p1", 
            new ObjectParameter("p0", string.Format("%{0}%{1}%", searchTerm, tbl_Path.PathSeperator)),
            new ObjectParameter("p1", string.Format("%{0}%", searchTerm)));
}

1 个答案:

答案 0 :(得分:0)

;)终于看到它上面有一个Execute()方法。