2011-02-04 79 views
0

我試圖在Mono上運行我的應用程序,並且出現以下錯誤。它曾經在Windows/.NET 4上正常運行。我所做的改變是配置使用MySQL而不是SQL Server。Mono 2.8上NHibernate 3中HbmJoinedSubclass的InvalidOperationException

任何想法發生了什麼?


Server Error in '/' Application 

To be XML serializable, types which inherit from IEnumerable must have 
an implementation of 
Add(NHibernate.Cfg.MappingSchema.HbmJoinedSubclass) at all levels of 
their inheritance hierarchy. 
System.Collections.Generic.IEnumerable`1[[NHibernate.Cfg.MappingSchema.HbmJoinedSubclass, 
NHibernate, Version=3.0.0.1002, Culture=neutral, 
PublicKeyToken=aa95f207798dfdb4]] does not implement 
Add(NHibernate.Cfg.MappingSchema.HbmJoinedSubclass). 

Description: HTTP 500. Error processing request. 

Stack Trace: 

System.InvalidOperationException: To be XML serializable, types which 
inherit from IEnumerable must have an implementation of 
Add(NHibernate.Cfg.MappingSchema.HbmJoinedSubclass) at all levels of 
their inheritance hierarchy. 
System.Collections.Generic.IEnumerable`1[[NHibernate.Cfg.MappingSchema.HbmJoinedSubclass, 
NHibernate, Version=3.0.0.1002, Culture=neutral, 
PublicKeyToken=aa95f207798dfdb4]] does not implement 
Add(NHibernate.Cfg.MappingSchema.HbmJoinedSubclass). 
at System.Xml.Serialization.TypeData.get_ListItemType() [0x00230] 
in /private/tmp/monobuild/build/BUILD/mono-2.8.2/mcs/class/System.XML/ 
System.Xml.Serialization/TypeData.cs:366 
at System.Xml.Serialization.TypeData.get_ListItemTypeData() 
[0x00016] in /private/tmp/monobuild/build/BUILD/mono-2.8.2/mcs/class/ 
System.XML/System.Xml.Serialization/TypeData.cs:298 
at System.Xml.Serialization.TypeData..ctor (System.Type type, 
System.String elementName, Boolean isPrimitive, 
System.Xml.Serialization.TypeData mappedType, 
System.Xml.Schema.XmlSchemaPatternFacet facet) [0x00104] in /private/ 
tmp/monobuild/build/BUILD/mono-2.8.2/mcs/class/System.XML/ 
System.Xml.Serialization/TypeData.cs:94 
at System.Xml.Serialization.TypeData..ctor (System.Type type, 
System.String elementName, Boolean isPrimitive) [0x00000] in <filename 
unknown>:0 
at System.Xml.Serialization.TypeTranslator.GetTypeData (System.Type 
runtimeType, System.String xmlDataType) [0x00241] in /private/tmp/ 
monobuild/build/BUILD/mono-2.8.2/mcs/class/System.XML/ 
System.Xml.Serialization/TypeTranslator.cs:243 
at System.Xml.Serialization.TypeTranslator.GetTypeData (System.Type 
type) [0x00000] in /private/tmp/monobuild/build/BUILD/mono-2.8.2/mcs/ 
class/System.XML/System.Xml.Serialization/TypeTranslator.cs:163 
at 
System.Xml.Serialization.XmlReflectionImporter.GetReflectionMembers 
(System.Type type) [0x00244] in /private/tmp/monobuild/build/BUILD/ 
mono-2.8.2/mcs/class/System.XML/System.Xml.Serialization/ 
XmlReflectionImporter.cs:774 
at System.Xml.Serialization.XmlReflectionImporter.ImportClassMapping 
(System.Xml.Serialization.TypeData typeData, 
System.Xml.Serialization.XmlRootAttribute root, System.String 
defaultNamespace) [0x0007a] in /private/tmp/monobuild/build/BUILD/ 
mono-2.8.2/mcs/class/System.XML/System.Xml.Serialization/ 
XmlReflectionImporter.cs:343 
at System.Xml.Serialization.XmlReflectionImporter.ImportTypeMapping 
(System.Xml.Serialization.TypeData typeData, 
System.Xml.Serialization.XmlRootAttribute root, System.String 
defaultNamespace) [0x0006e] in /private/tmp/monobuild/build/BUILD/ 
mono-2.8.2/mcs/class/System.XML/System.Xml.Serialization/ 
XmlReflectionImporter.cs:217 
Version information: Mono Runtime Version: 2.8.2 (tarball Tue Jan 4 
15:08:58 MST 2011); ASP.NET Version: 4.0.30319.1 
+0

您是否能夠識別哪個映射實際導致錯誤? – AlexCuse 2011-02-04 14:25:03

回答

0

升級到NHibernate的3的最新版本,問題解決。我正在運行一箇舊的alpha版本3.0 ... doh!