在asp.net/xsp/mono上的typeloadexception在debian/opensuse上
题
当我重置Apache并加载网站时,我会在下面获得第一个错误。我不知道问题是什么。如果我再次重新加载页面(不重新启动Apache),我会得到第二个错误,可能是因为第一个错误发生,而baseuser是Application_start使用的第一类/func。
为什么我会得到这个负载例外?弄乱了什么是我尝试使用Mono的VMware IMG调试它,我得到了同样的例外(直到重新启动,现在拒绝给我任何东西 但是404错误)。但是,当我使用Mono开发运行该项目时,网站运行完美。 WTF。
有任何想法吗?
Server Error in '/' Application
A type load exception has occurred.
Description: HTTP 500. Error processing request.
Stack Trace:
System.TypeLoadException: A type load exception has occurred.
at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod*,object,object[],System.Exception&)
at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0
Version information: Mono Runtime Version: 2.8.1 (tarball Mon Dec 27 10:20:03 UTC 2010); ASP.NET Version: 2.0.50727.1433
第二:
Server Error in '/' Application
Could not load type 'mynamespace.BaseUser' from assembly 'mynamespace, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.
Description: HTTP 500. Error processing request.
Stack Trace:
System.TypeLoadException: Could not load type 'mynamespace.BaseUser' from assembly 'mynamespace, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.
at mynamespace.Global.Application_Start (System.Object sender, System.EventArgs e) [0x00000] in <filename unknown>:0
at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod*,object,object[],System.Exception&)
at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0
Version information: Mono Runtime Version: 2.8.1 (tarball Mon Dec 27 10:20:03 UTC 2010); ASP.NET Version: 2.0.50727.1433
-edit-我将提到我在Opensuse和我的网站上尝试了Monodevelops构建我的网站,并且我遇到了完全相同的问题。
解决方案
Linux中的Mono有很多类似的问题,但我设法处理了所有问题。
我不知道这是否对您有用,但我会做 xbuild
在运行之前 xsp
. 。它帮助我很多次,我什至不知道为什么需要它,因为应该像ASP.NET一样,在编译ASP.NET页面之前将其预编译C#项目。
TypeLoadException
当无法加载程序集的DLL时发生(通常,当集合中的类不存在时,但这不是您的情况),因此我猜想ASP.NET的BIN目录并未填充应用程序的代码BEHIND DLL。
但是...我也有一个嫌疑 已经编译了, ,否则您的错误将与 Global
班级。
尝试我的建议,告诉我会发生什么。
不隶属于 StackOverflow