数据库通用的问题
设计数据库通用时,如果是写一个通用的回去数据库连接/开启事务。就只是写一个公共接口,
interface Idb
{
IDbConnection GetDbConnection;//数据库连接
IDbTransaction ConsoleTransaction(); //事务
}
但是如果是具体到每种业务,比如查询人员表中的一个人员名称。看别人的一般是每个业务写一个
接口,然后用多个类来实现接口 实现每种数据库操作类。
如
interface IUser
{
string GetUserName();
}
class SqlserverDb:IUser
{
public string GetUserName();
}
class MSSqlDb:IUser
{
public string GetUserName();
}
sql数据库时, ( IUser(new SqlserverDb) ).GetUserName();
这样每个业务多些个类,其实如果替换不同的数据库时,代码要带动的也很多。
怎么才能做到易修改,通用呢?
求指教!!