如何使用SQL查询文本在LinQ中设置过滤器值?

时间:2014-08-02 07:32:23

标签: linq

我正在使用LINQ作为我的数据库应用程序。 所以我可以这样写:

        using (ShuttleDataContext dc = Config.GetNewShuttleDBConnection())
        {
            List<RefState> states = (from a in dc.RefStates select a).ToList();

            return states;
        }

知道我必须处理要求,我必须通过SQL字符串从此数据库中过滤,例如过滤字符串:“ID like'7%'”或“Name ='Red'”。

当然,我会写一些类似.Where(a =&gt; a.Name ==“Red”),但几乎不可能将每个filterexpression映射到where子句......所以有一种方法可以Linq-List中的本地T-SQL?

1 个答案:

答案 0 :(得分:0)

据我所知,您不能提供过滤条件,但您可以使用ExecuteQuery执行任意SQL语句并将其映射到LINQ类型:

List<RefState> states = dc.ExecuteQuery<RefState>(
    "SELECT * FROM RefStates WHERE ID LIKE '7%'").ToList();