动态实体框架查询

问题描述:

目前我建立动态SQL如下:动态实体框架查询

//Expressions are stored as String in database 
static Dictionary<string, string> TypeToExpression = new Dictionary<string, string>() 
{ 
    {"TypeA","A +' ' + B"}, 
    {"TypeB","B"} 
}; 

static private string BuildSQL(String CIType) 
{ 
     return "SELECT " + TypeToExpression[CIType] + " " + 
      "FROM CONFIGURATIONITEM " + 
      "WHERE TYPE ='" +CIType + "'"; 
} 

BuildSQL("TypeA"); 
-> SELECT A +' ' + B FROM CONFIGURATIONITEM WHERE TYPE ='TypeA' 

BuildSQL("TypeB"); 
-> SELECT B FROM CONFIGURATIONITEM WHERE TYPE ='TypeA' 

有没有一种方法,我可以构建功能BuildEnityQuerty(字符串CIType),这将最终产生相同的SQL作为我目前BuildSQL功能?

我刚才回答了这样一个问题,我想这就是你要寻找的:

Building a custom|progressive query in LINQ?

+0

谢谢您的回答。我没有看到你的解决方案如何做动态评估。那么在我的情况下如何评估exprssion A +''+ B。 – ahagman 2013-05-09 14:17:48