我UnitTesting
项目,一个TestMethod
这就要求存储库和信息库中PostgreSQL
“NHibernate.Cfg.Configuration”的类型初始值设定项引发异常。单元测试
当我运行这个测试其抛出异常创造了新的纪录:
消息:The type initializer for 'NHibernate.Cfg.Configuration' threw an exception.
内部异常:{"The type initializer for 'NHibernate.LoggerProvider' threw an exception."}
StackTrace:
at NHibernate.Cfg.Configuration..ctor()
at FluentNHibernate.Cfg.FluentConfiguration..ctor()
at FluentNHibernate.Cfg.Fluently.Configure()
at Woo.Test.UnitTest.FillCompany()
我的仓库工作的很好,当我从ASP.NET MVC Applictaion
称之为这是我的Fluent NHibernate
配置:
_configuration = Fluently.Configure().Database(PostgreSQLConfiguration.Standard.ConnectionString(c => c
.FromConnectionStringWithKey("DefaultConnection"))).Mappings(m => m.FluentMappings.AddFromAssemblyOf<Company>())
.ExposeConfiguration(cfg => new SchemaUpdate(cfg).Execute(false, true)).BuildConfiguration();
_sessionFactory = _configuration.BuildSessionFactory();
那么问题只与单元测试项目。
的App.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configurations>
<connectionStrings>
<add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Server=localhost;Port=5432;Database=Test;User=postgres;Password=Test;" />
</connectionStrings>
</configurations>
</configuration>
请回复。我总是复制:始终在app.config上复制。这不是连接字符串问题。我试过PostgreSQLConfiguration.Standard.ConnectionString(“Server = localhost; Port = 5432; Database = Test; User = postgres; Password = Test;”),但它也可以。 –