首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >模糊NHibernate/Fluent NHibernate错误

模糊NHibernate/Fluent NHibernate错误
EN

Stack Overflow用户
提问于 2009-04-14 15:04:48
回答 3查看 16.1K关注 0票数 8

在尝试构建会话工厂时,我遇到了以下错误:

代码语言:javascript
复制
PersistenceTests.Can_Map_Orders_To_Database : Failed 
System.IndexOutOfRangeException: Index was outside the bounds of the 
array. 
at NHibernate.Mapping.Column.set_Name(String value) 
at NHibernate.Cfg.XmlHbmBinding.ClassBinder.BindColumns(XmlNode node, 
SimpleValue model, Boolean isNullable, Boolean autoColumn, String 
propertyPath) 
at NHibernate.Cfg.XmlHbmBinding.ClassBinder.BindColumnsOrFormula 
(XmlNode node, SimpleValue simpleValue, String path, Boolean 
isNullable) 
at NHibernate.Cfg.XmlHbmBinding.ClassBinder.BindSimpleValue(XmlNode 
node, SimpleValue model, Boolean isNullable, String path) 
at 
NHibernate.Cfg.XmlHbmBinding.CollectionBinder.BindCollectionSecondPass 
(XmlNode node, Collection model, IDictionary`2 persistentClasses) 
at 
NHibernate.Cfg.XmlHbmBinding.CollectionBinder.<>c__DisplayClassd.<AddCollec tionSecondPass>b__c 
(IDictionary`2 persistentClasses) 
at NHibernate.Cfg.Configuration.SecondPassCompile() 
at NHibernate.Cfg.Configuration.BuildSessionFactory() 
at FluentNHibernate.Cfg.FluentConfiguration.BuildSessionFactory() in c: 
\Code Samples\NHibernate\Fluent Nhibernate - Trunk\src\FluentNHibernate 
\Cfg\FluentConfiguration.cs: line 94 
FluentNHibernate.Cfg.FluentConfigurationException: An invalid or 
incomplete configuration was used while creating a SessionFactory. 
Check PotentialReasons collection, and InnerException for more detail. 
at FluentNHibernate.Cfg.FluentConfiguration.BuildSessionFactory() in c: 
\Code Samples\NHibernate\Fluent Nhibernate - Trunk\src\FluentNHibernate 
\Cfg\FluentConfiguration.cs: line 99 
at FluentNHibernate.SessionSource..ctor(FluentConfiguration config) in 
c:\Code Samples\NHibernate\Fluent Nhibernate - Trunk\src 
\FluentNHibernate\SessionSource.cs: line 38 
at 
FluentNHibernate.Testing.SingleConnectionSessionSourceForSQLiteInMemoryTest ing..ctor 
(FluentConfiguration config) in c:\Code Samples\NHibernate\Fluent 
Nhibernate - Trunk\src\FluentNHibernate\Testing 
\SingleConnectionSessionSourceForSQLiteInMemoryTesting.cs: line 15 
at Core.Infrastructure.Data.NHibernate.Tests.PersistenceTests.SetUp() 
in PersistenceTests.cs: line 26

我正在使用FNH主干和NH2 2.0.1。有趣的是,我能够编译我的映射(通过AutoPersistenceModel.CompileMappings)并成功地将它们写入文件系统-- FNH不会抱怨。只有在尝试构建会话工厂时,才会出现上面没有多大帮助的错误消息。有人有什么想法吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-04-14 15:27:05

流畅的NHibernate本身很少会直接抱怨你。在内部,它只是为你构建HBM文件,所以如果你告诉它构建一些错误的东西,那么NHibernate本身就会变得暴跳如雷。

如果您还没有准备好,您可能希望从导出映射文件开始,如下所示:

代码语言:javascript
复制
.Mappings(m => m.FluentMappings.AddFromAssemblyOf<MyClass>()
    .ExportTo("path")

然后,您可以在那里挖掘,看看是否有什么问题。我确实记得以前遇到过这个错误,我认为它与映射的列数不匹配有关。这是我的映射中很容易遗漏的错误之一,所以不幸的是,我所能建议的就是真正地从ExportTo的输出中搜索出任何不合理的东西。

票数 6
EN

Stack Overflow用户

发布于 2009-12-17 17:19:00

我发现内部异常提供了更多细节。在我的例子中,我必须将NHibernate.ByteCode.Castle.dll文件添加到引用中。

票数 13
EN

Stack Overflow用户

发布于 2009-04-14 15:20:23

我们需要看看你的配置才能帮上大忙。但是堆栈跟踪的这一部分应该可以让您知道从哪里开始。

位于c:\Code Samples\ Nhibernate \Fluent Nhibernate-

\src\FluentNHibernate\Cfg\FluentConfiguration.cs中的FluentNHibernate.Cfg.FluentConfigurationException:位置的:第94行创建SessionFactory时使用了无效或不完整的配置。查看PotentialReasons集合和InnerException以获取更多详细信息。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/748044

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档