C# EF 5.0通用类
时间: 2024-10-24 12:08:15 浏览: 14
C# Entity Framework (EF) 5.0是一个用于.NET平台的对象关系映射(ORM)框架,它允许开发者将数据库表映射到C#类上,简化了数据访问层的开发。通用类(Generic Classes),也称为泛型类,是EF 5.0中引入的一个特性,它提供了一种创建可复用、类型安全的数据访问操作的方法。
通过泛型,你可以创建一个模板类,这个类可以适用于不同类型的数据上下文,如DbContext。例如,你可以定义一个通用的仓储类(Repository),它接受DbContext作为参数:
```csharp
public class GenericRepository<T> where T : class, new()
{
private readonly DbContext _context;
public GenericRepository(DbContext context)
{
_context = context;
}
// 泛型方法,如添加、更新、删除和查询记录
public void Add(T entity) => _context.Set<T>().Add(entity);
public void Update(T entity) => _context.Entry(entity).State = EntityState.Modified;
public void Delete(T entity) => _context.Set<T>().Remove(entity);
public List<T> GetAll() => _context.Set<T>().ToList();
}
```
在这个例子中,`T`是一个类型参数,表示你想操作的具体实体类型。当你实例化`GenericRepository`时,需要指定具体的实体类型,如`GenericRepository<MyEntity>`。
阅读全文