首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

LINQ to SQL语句之动态查询条件怎么参数化

2013-08-10 
LINQ to SQL语句之动态查询条件如何参数化如下代码:var db new ExamdaDbContext(EnmDb.ExamSystem_Set)

LINQ to SQL语句之动态查询条件如何参数化
如下代码:


var db = new ExamdaDbContext(EnmDb.ExamSystem_Set);
            IQueryable<ExpressionClassModel> cities = db.ExpresstionClass;
            ParameterExpression param = Expression.Parameter(typeof(ExpressionClassModel), "c");
            Expression left = Expression.Property(param, typeof(ExpressionClassModel).GetProperty("Name"));
            Expression right = Expression.Constant("心情");
            Expression filter = Expression.Equal(left, right);
            var result = db.ExpresstionClass.Where(Expression.Lambda<Func<ExpressionClassModel, bool>>(filter, param));


采用的是拼接的方式 生成的sql语句为SELECT [Extent1].[ID] AS [ID], [Extent1].[Name] AS [Name], [Extent1].[Order] AS [Order]FROM [dbo].[Examda_Expression_Class] AS [Extent1] WHERE N'心情' = [Extent1].[Name]

怎样实现查询条件参数化呢 如@p_linq_0 = [Extent1].[Name] LINQ?to?SQL 动态查询条件 动态查询参数化
[解决办法]
帮顶,我也想知道。
[解决办法]
我想 ALinq Dynamic 正是你想要的
http://esql.codeplex.com
[解决办法]
比如说你写
var query = from x in MyDbContext()
    select x;
if(name !=null)
    query = from x in query
            where x.Name == name
            select x;

你跟踪一下关系数据库执行的sql语句是什么?

热点排行