首页 > 技术文章 > EF框架

wjk123456 2021-11-24 19:03 原文

using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
using Model;
namespace DAL
{
//泛型 T:你传什么类型就是什么类型
public class BaseDAL<T> where T:class
{
/// <summary>
/// 数据上下文类
/// </summary>
public Model1 Model
{
get
{
return new Model1();
}
}
/// <summary>
/// 查询集合
/// </summary>
/// <param name="Expression">表达式</param>
/// <returns>List集合</returns>
public List<T> Select(Expression<Func<T,bool>>Expression)
{
return Model.Set<T>().Where(Expression).ToList();
}
/// <summary>
/// 查询单个
/// </summary>
/// <param name="expression">表达式</param>
/// <returns>单个对象或null</returns>
public T Single(Expression<Func<T,bool>>expression)

{

return Model.Set<T>().FirstOrDefault(expression);
}
/// <summary>
/// 查询单个对象
/// </summary>
/// <param name="id">主键</param>
/// <returns>单个对象或null</returns>
public T Single(int id)
{
return Model.Set<T>().Find(id);
}
/// <summary>
/// 添加
/// </summary>
/// <param name="info">数据</param>
/// <returns>受影响的行数</returns>
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();
}
}
}

推荐阅读