动态程序集不支持调用的成员。

时间:2011-07-29 08:07:06

标签: c# nhibernate fluent-nhibernate mono castle

自从升级到NHibernate 3.2.0.400,Castle.Core 2.5和FNH 1.2.0.712后,每当我们启动应用程序时,抛出以下异常:

  

动态程序集不支持调用的成员。

堆栈跟踪向我们显示当Mono.Addins尝试初始化插件引擎时发生错误。

[NotSupportedException: The invoked member is not supported in a dynamic assembly.]
   System.Reflection.Emit.InternalAssemblyBuilder.get_CodeBase() +56
   Mono.Addins.AddinEngine.CheckHostAssembly(Assembly asm) +85
   Mono.Addins.AddinEngine.ActivateRoots() +44
   Mono.Addins.AddinEngine.Initialize(Assembly startupAsm, String configDir, String addinsDir, String databaseDir) +320
   Mono.Addins.AddinManager.Initialize(String configDir, String addinsDir) +49

问题是我不认为这是一个Mono.Addins问题 - 我用NHiberate的东西跑了另一个项目,没有Mono.Addins而且我得到同样的错误。

刷新页面摆脱它并且应用程序继续运行,但这对开发来说非常烦人,显然对于生产来说还不够好。

NHibernate是通过NuGet添加的,FluentNHibernate也是如此。使用-IgnoreDependancies添加了Fluent,因为它抱怨安装的NHibernate版本。

任何人都知道发生了什么事?

1 个答案:

答案 0 :(得分:0)

好的 - 事实证明这是Mono.Addins - 恢复到0.6.0摆脱了这个错误。升级回0.6.1再次引入它。

我认为这个bug已修复为0.6.0并重新引入0.6.1。我会在MonoAddins小组继续讨论这个问题。