本文整理汇总了C#中IDbProvider.CreateConnection方法的典型用法代码示例。如果您正苦于以下问题:C# IDbProvider.CreateConnection方法的具体用法?C# IDbProvider.CreateConnection怎么用?C# IDbProvider.CreateConnection使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IDbProvider
的用法示例。
在下文中一共展示了IDbProvider.CreateConnection方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Init
private void Init(string cnxString, IDbProvider provider)
{
cnxString.MustNotBeEmpty();
provider.MustNotBeNull();
_provider = provider;
_conex = _provider.CreateConnection();
_conex.ConnectionString = cnxString;
}
示例2: Setup
public void Setup()
{
_dbProvider = DbProviderFactory.GetDbProvider("System.Data.SqlClient");
_dbProvider.ConnectionString =
@"Data Source=SPRINGQA;Database=Spring;User ID=springqa;Password=springqa;Trusted_Connection=False";
IDbCommand command = _dbProvider.CreateCommand();
command.Connection = _dbProvider.CreateConnection();
ClearTestData(command);
CreateTestData(command);
}
示例3: SetUp
public void SetUp()
{
//NamespaceParserRegistry.RegisterParser(typeof(DatabaseNamespaceParser));
BasicConfigurator.Configure();
string assemblyName = GetType().Assembly.GetName().Name;
ctx = new XmlApplicationContext("assembly://" + assemblyName + "/Spring.Data.NHibernate/HibernateTxScopeTransactionManagerTests.xml");
dbProvider = ctx["DbProvider"] as IDbProvider;
transactionManager = ctx["transactionManager"] as IPlatformTransactionManager;
CleanupDatabase(dbProvider.CreateConnection());
}
示例4: Test
public void Test()
{
BasicConfigurator.Configure();
string assemblyName = GetType().Assembly.GetName().Name;
ctx = new XmlApplicationContext("assembly://" + assemblyName + "/Spring.Data.NHibernate/txScopeBugTests.xml");
dbProvider = ctx["DbProvider"] as IDbProvider;
transactionManager = ctx["TransactionManager"] as IPlatformTransactionManager;
CleanupDatabase(dbProvider.CreateConnection());
List<Thread> threads = new List<Thread>();
for (int i = 0; i < 200; i++)
{
int taskCounter = i;
Debug.WriteLine(String.Format("\n---------\nSpawning Task Number {0}\n---------\n", taskCounter));
Thread t = new Thread(MethodForThread);
threads.Add(t);
t.Start(taskCounter);
}
foreach (Thread thread in threads)
{
thread.Join();
}
}
示例5: DoGetConnection
/// <summary>
/// Get a ADO.NET Connection/Transaction Pair for the given IDbProvider.
/// Same as <see cref="GetConnection"/> but throwing original provider
/// exception.
/// </summary>
/// <remarks>
/// Is aware of a corresponding Connection/Transaction bound to the current thread, for example
/// when using AdoPlatformTransactionManager. Will bind a IDbConnection to the thread
/// if transaction synchronization is active
/// </remarks>
/// <param name="provider">The provider.</param>
/// <returns></returns>
public static ConnectionTxPair DoGetConnection(IDbProvider provider)
{
AssertUtils.ArgumentNotNull(provider, "provider");
ConnectionHolder conHolder = (ConnectionHolder)TransactionSynchronizationManager.GetResource(provider);
if (conHolder != null && (conHolder.HasConnection || conHolder.SynchronizedWithTransaction))
{
conHolder.Requested();
if (!conHolder.HasConnection)
{
if (LOG.IsDebugEnabled)
{
LOG.Debug("Fetching resumed ADO.NET connection from DbProvider");
}
conHolder.Connection = provider.CreateConnection();
}
return new ConnectionTxPair(conHolder.Connection, conHolder.Transaction);
}
// Else we either got no holder or an empty thread-bound holder here.
if (LOG.IsDebugEnabled)
{
LOG.Debug("Fetching Connection from DbProvider");
}
IDbConnection conn = provider.CreateConnection();
conn.Open();
if (TransactionSynchronizationManager.SynchronizationActive)
{
LOG.Debug("Registering transaction synchronization for IDbConnection");
//Use same connection for further ADO.NET actions with the transaction.
//Thread-bound object will get removed by manager at transaction completion.
ConnectionHolder holderToUse = conHolder;
if (holderToUse == null)
{
holderToUse = new ConnectionHolder(conn, null);
}
else
{
holderToUse.Connection = conn;
}
holderToUse.Requested();
TransactionSynchronizationManager.RegisterSynchronization(
new ConnectionSynchronization(holderToUse, provider));
holderToUse.SynchronizedWithTransaction = true;
if (holderToUse != conHolder)
{
TransactionSynchronizationManager.BindResource(provider, holderToUse);
}
}
return new ConnectionTxPair(conn, null);
}