using System.Data;
namespace Kean.Infrastructure.Database
{
///
/// 表示数据库连接上下文
///
public interface IDbContext : IDbConnection
{
///
/// 获取数据库连接
///
IDbConnection Connection { get; }
///
/// 获取事务
///
IDbTransaction Transaction { get; }
///
/// 指定对象目标
///
/// 数据库对象映射的实体类型
ISchema From()
where T : IEntity;
///
/// 指定对象目标
///
/// 数据库对象映射的实体类型
/// 对象名
ISchema From(string name = null)
where T : IEntity;
///
/// 指定对象目标
///
/// 数据库对象映射的实体类型1
/// 数据库对象映射的实体类型2
ISchema From()
where T1 : IEntity
where T2 : IEntity;
///
/// 指定对象目标
///
/// 数据库对象映射的实体类型1
/// 数据库对象映射的实体类型2
/// 对象名1
/// 对象名2
ISchema From(string name1 = null, string name2 = null)
where T1 : IEntity
where T2 : IEntity;
///
/// 指定对象目标
///
/// 数据库对象映射的实体类型1
/// 数据库对象映射的实体类型2
/// 数据库对象映射的实体类型3
ISchema From()
where T1 : IEntity
where T2 : IEntity
where T3 : IEntity;
///
/// 指定对象目标
///
/// 数据库对象映射的实体类型1
/// 数据库对象映射的实体类型2
/// 数据库对象映射的实体类型3
/// 对象名1
/// 对象名2
/// 对象名3
ISchema From(string name1 = null, string name2 = null, string name3 = null)
where T1 : IEntity
where T2 : IEntity
where T3 : IEntity;
}
}