按照this Fluent NHibernate教程中的步骤概述后,我遇到了下面描述的问题。
当我构建并运行项目时,我在尝试构建会话工厂时遇到以下错误:“在创建SessionFactory时使用了无效或不完整的配置。检查PotentialReasons集合,以及InnerException以获取更多详细信息”。
InnerException包含以下错误消息:“ ... \ bin \ Debug \ FluentNHibernate.dll]签名不正确”并且PotentialReasons集合的长度为0.(没有添加任何内容) )。
以下是方法:
return Fluently.Configure()
.Database(MsSqlConfiguration.MsSql2008
.ConnectionString(c =>
c.Server("CHRIS-PC\\SQLEXPRESS")
.Database("TestDB")
.Username("test")
.Password("test")))
.Mappings(m =>
m.AutoMappings.Add(model))
.ExposeConfiguration(BuildSchema)
.BuildSessionFactory();
我正在使用我认为是FluentNhibernate.dll(版本1.2)的最新版本。我似乎无法在网上找到任何有类似问题的人。
答案 0 :(得分:1)
试试这个
return Fluently.Configure().Database(MsSqlConfiguration.MsSql2008
.ConnectionString(@"Data Source=CHRIS-PC\\SQLEXPRESS;Initial Catalog=TestDB;User ID=test"))
.Mappings(m => m.AutoMappings.Add(model))
.ExposeConfiguration(BuildSchema)
.BuildSessionFactory();
或使用此功能让 mymodel 成为示例模型
Fluently.Configure()
.Database(MsSqlConfiguration.MsSql2008
.ConnectionString(ConfigurationManager.ConnectionStrings["CHRIS-PC\\SQLEXPRESS"].ConnectionString))
.Mappings(m => m.FluentMappings.AddFromAssemblyOf<mymodel>().Add<UsersMap>())
.ExposeConfiguration(cfg =>
{
new SchemaExport(cfg).Execute(false, true, false);
// new SchemaUpdate(cfg).Execute(true, true);
}).BuildSessionFactory();