前言
记得第一次做机房重构的时候那代码冗余的,百分十90的都是重复代码,就是因为不会使用反省,现在带大家看看接口层是如何使用反省省去代码的书写呢?
代码
具体的接口层代码
public interface IUserInfoDal:IBaseDal<t_User>
{
//定义自己特有的方法
}
父接口代码
public interface IBaseDal<T>where T:class,new()
{
//查询
IQueryable<T> LoadEntities(System.Linq.Expressions.Expression<Func<T, bool>> whereLambda);
//分页查询
IQueryable<T> LoadPageEntities<s>(int pageIndex, int pageSize, out int totalCount, System.Linq.Expressions.Expression<Func<T, bool>> whereLambda, System.Linq.Expressions.Expression<Func<T, s>> orderbyLambda, bool isAsc);//分页的方法
//删除
bool DeleteEntity(T entity);
//修改
bool EditEntity(T entity);
//添加
T AddEntity(T entity);
}
简要分析:这样做的好处就是每个接口的方法都是各自的方法,维护起来也容易,代码书写也比较简单,大家怎么看呢?