public virtual IDbTransaction StartTransaction(DataSources source)
{
IDbConnection connection = GetConnection(source);
if (connection.State == ConnectionState.Closed)
{
connection.Open();
}
IDbTransaction transaction = GetTransaction(source) ?? connection.BeginTransaction(IsolationLevel.Serializable);
SetTransaction(source, transaction);
return transaction;
}