C# 带有Lambda表达式的ExecuteSqlCommand

C# 带有Lambda表达式的ExecuteSqlCommand,c#,entity-framework-4,lambda,.net-4.5,C#,Entity Framework 4,Lambda,.net 4.5,我们使用存储库模式和工作单元模式与数据库交互。 我有以下方法来执行存储过程: /*** Execute stored procedure ***/ public virtual void ExecuteProcedure(String procedureCommand, params SqlParameter[] sqlParams) { Ctxt.Database.ExecuteSqlCommand(procedureCommand, sqlParams); } 但是,我的经理告诉我

我们使用存储库模式和工作单元模式与数据库交互。 我有以下方法来执行存储过程:

/*** Execute stored procedure ***/
public virtual void ExecuteProcedure(String procedureCommand, params SqlParameter[] sqlParams)
{
    Ctxt.Database.ExecuteSqlCommand(procedureCommand, sqlParams);
}
但是,我的经理告诉我使用lambda表达式来实现这一点。
有人能想一想如何使用lambda重写这个,以及如何从客户端使用这个吗???

他到底为什么要求这样做?可能是因为他使用lamda编写了其他方法,例如:public virtual T Find(IQueryAggregator qry,params Expression[]includes){返回过滤器(qry,includes).FirstOrDefault();}EF不允许您仅将存储过程调用映射到数据上下文上吗?现在它肯定支持这一点了……我不知道你在说什么?你能帮我吗explain@Marc-Gravell,是的,EF允许您将过程调用映射到数据上下文。这种技术的唯一限制是需要在编译时执行映射。(取决于开发人员的角度,这一限制也可以被视为一种幸事。)使用lambda可能允许在运行时进行绑定和执行。根据开发人员和技术要求,在运行时绑定和执行数据库对象可以被认为是好的,也可以被认为是糟糕的。