S#arp Lite - NHibernate Initializerが名前付き接続文字列を見つけられない

I am attempting to use S#arp Lite. I have followed the instructions here - https://github.com/codai/Sharp-Lite/blob/master/README.txt

NUnitで最初に MappingIntegrationTests を実行しようとすると、次のエラーが表示されます。

MySolution.Tests.NHibernateProvider.MappingIntegrationTests.CanConfirmDatabaseMatchesMappings:
SetUp : NHibernate.HibernateException : Could not find named connection string MySolutionConnectionString
MySolution.Tests.NHibernateProvider.MappingIntegrationTests.CanConfirmDatabaseMatchesMappings:
SetUp : NHibernate.HibernateException : Could not find named connection string MySolutionConnectionString

NUnitは、上記のエラーが MappingIntegrationTests SetUp メソッドの2行目から来ていることを示します。

[SetUp]
public virtual void SetUp() {
  _configuration = NHibernateInitializer.Initialize();
  _sessionFactory = _configuration.BuildSessionFactory();
}

私の NHibernateInitializer クラスの Initialize メソッドは、

public static Configuration Initialize() {
  Configuration configuration = new Configuration();
  configuration.Proxy(p => p.ProxyFactoryFactory())
               .DataBaseIntegration(db => {
                   db.ConnectionStringName = "MySolutionConnectionString";
                   db.Dialect();
               })
               .AddAssembly(typeof(ActionConfirmation<>).Assembly)
               .CurrentSessionContext();
  ConventionModelMapper mapper = new ConventionModelMapper();
  mapper.WithConventions(configuration);
  return configuration;
}

また、 MySolution.Tests プロジェクトの App.Config ファイルは、

<?xml version="1.0" encoding="utf-8" ?>

  
    
  

NUnitテストランナーが名前付き接続文字列MySolutionConnectionString を見つけることができませんでした "というメッセージでなぜ失敗したのか分かりません。 Loquacious ConfigurationのJames Kovacsのブログ記事によると、これは問題なく動作するはずです。

"db.ConnectionStringNameを設定すると、NHibernateは[App | Web] .configの設定セクションから接続文字列を読み込みます。"

2

1 答え

MySolution.Tests is a dll but App.configs are only read for the starting .exe file which is the NUnit testrunner.

0
追加された