日期:2014-05-20  浏览次数:20991 次

linq to entity三层框架中执行linq语句
把linq to entity作为数据层,这样的话,在业务逻辑层写个linq语句,from a in A join b in B on a.id = b.aid,那么这个linq语句如何能放到数据层执行?还是将AdventureWorksDW2008Entities传递到业务逻辑层。
------解决方案--------------------
传统3层模式,不太适合EF开发。
目前业界比较流行的是Repository模式。

http://www.cnblogs.com/carysun/archive/2009/03/20/repository.html
http://www.soaspx.com/dotnet/asp.net/DPattern/dpattern_20110117_7111.html
------解决方案--------------------

// 传递filter作为条件
 public IEnumerable<MTestModel> QueryByWhere(System.Linq.Expressions.Expression<Func<MTestModel, bool>> filter)
        {
            return context.MTestModel.Where<MTestModel>(filter);
        }

详细使用学习下System.Linq.Expressions.Expression