11.23父类Basedal层

public class BaseDAL<T> where T:class//定义一个T,在每个DAL层实现调用不同实体来完成不同表方法的调用
{
/// <summary>
/// 数据上下文
/// </summary>
public Model1 Model
{
get { return new Model1(); }
}

/// <summary>
/// 查询集合
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
public List<T> Select(Expression<Func<T, bool>> exception)
{

return Model.Set<T>().Where(exception).ToList();

}

/// <summary>
/// 查询单个对象
/// </summary>
/// <param name="id">主键</param>
/// <returns>单个对象或null</returns>
public T Single(Expression<Func<T,bool>> exception)
{

//传主键直接用Find()即可,传其他不是主键用Firstordefault
return Model.Set<T>().FirstOrDefault(exception);//Firstordefault lastordefault
}

 

/// <summary>
/// 添加
/// </summary>
/// <param name="info">数据</param>
/// <returns>受影响的行数</returns>
///
//sqlParameters命名参数
public int Insert(T info)
{

Model.Set<T>().Add(info);
return Model.SaveChanges();
}

 

/// <summary>
/// 删除
/// </summary>
/// <param name="info">数据</param>
/// <returns>受影响的行数</returns>
public int Delete(T info)
{
Model.Set<T>().Remove(info);
return Model.SaveChanges();
}


/// <summary>
/// 修改
/// </summary>
/// <param name="info"></param>
/// <returns></returns>
}
}

posted @ 2021-11-24 19:38  东黎  阅读(37)  评论(0)    收藏  举报