public static UnitOfWorkTestContextDbStrategy For(DatabaseEngine databaseEngine, string databaseName, IDictionary <string, string> properties) { UnitOfWorkTestContextDbStrategy strategy; switch (databaseEngine) { case DatabaseEngine.SQLite: strategy = new SQlLiteUnitOfWorkTestContextDbStrategy(); break; case DatabaseEngine.MsSqlCe: strategy = new MsSqlCeUnitOfWorkTestContextDbStrategy(databaseName); break; case DatabaseEngine.MsSql2005: strategy = new MsSql2005UnitOfWorkTestContextDbStrategy(databaseName); break; case DatabaseEngine.MsSql2005Express: strategy = new MsSql2005ExpressUnitOfWorkTestContextDbStrategy(databaseName); break; default: throw new ArgumentOutOfRangeException("databaseEngine"); } if (properties != null) { foreach (KeyValuePair <string, string> property in properties) { strategy.NHibernateProperties[property.Key] = property.Value; } } return(strategy); }
public static UnitOfWorkTestContextDbStrategy For(DatabaseEngine databaseEngine, string databaseName, IDictionary<string, string> properties) { UnitOfWorkTestContextDbStrategy strategy; switch (databaseEngine) { case DatabaseEngine.SQLite: strategy = new SQlLiteUnitOfWorkTestContextDbStrategy(); break; case DatabaseEngine.MsSqlCe: strategy = new MsSqlCeUnitOfWorkTestContextDbStrategy(databaseName); break; case DatabaseEngine.MsSql2005: strategy = new MsSql2005UnitOfWorkTestContextDbStrategy(databaseName); break; case DatabaseEngine.MsSql2005Express: strategy = new MsSql2005ExpressUnitOfWorkTestContextDbStrategy(databaseName); break; default: throw new ArgumentOutOfRangeException("databaseEngine"); } if (properties != null) foreach (KeyValuePair<string,string> property in properties) strategy.NHibernateProperties[property.Key] = property.Value; return strategy; }