.Net MySQL通用CRUD存储库
本文关键字:存储 CRUD 通用 MySQL Net | 更新日期: 2023-09-27 17:59:40
是否可以在VB.Net中为MySQL连接创建一个通用的CRUD存储库,而不依赖任何第三方ORM?
我的意思是,MySQL CRUD依赖于字符串来识别您想要访问的表和字段,同时我们有一个.Net对象。
实现这一点的唯一方法是使用ORM和/或Reflection类吗?难道我们不能对对象或字符串做点什么来相互匹配吗?
假设我得到了这个存储库接口:
public interface IRepository<T> where T:class
{
void Insert(T entity);
void Delete(T entity);
IQueryable<T> GetAll();
T GetById(string id);
}
看到这个界面后,我想到的是为我的每个对象创建一个个人存储库,尽管CRUD方法非常相似。
例如,我必须为Employee CRUD创建一个存储库。
class EmployeeRepository : IRepository<Employee>
{
private string _query;
public IQueryable<Employee> GetAll(Employee entity)
{
_query = "SELECT * FROM tbl_msemployee";
//Do query here, which will eventually return a list of Employee object
}
}
我想最好使用现有的ORM来处理CRUD操作。然后在这个orm层之上构建存储库(可能是t4或其他代码生成)和服务层。