我正在开发一个广泛使用 Spring AOP 的应用程序。该应用程序是用 .NET 2.0 编写的,但我正在尝试将其升级到 .NET 4.0。这意味着从 Spring 1.2.0 升级到 1.3.2,然而,这似乎引起了一些问题。
这是我现在尝试访问默认页面时收到的错误。
Error thrown by a dependency of object 'IType1' defined in 'file [C:\svn\Application.Web\Configs\ImmutableDefinitions.xml] line 55' : Unsatisfied dependency expressed through constructor argument with index 0 of type [Application.Logic.Process.OrderBlo] : Error thrown by a dependency of object 'OrderBlo' defined in 'file [C:\svn\Application.Web\Configs\Order_Logic.xml] line 10' : Initialization of object failed : Cannot instantiate Type [Application.Interceptors.ActivityMonitorInterceptor] using ctor [Void .ctor(Application.Logic.ActivityMonitorBlo)] : 'Unable to cast object of type 'CompositionAopProxy_fe703921758d417f8e6a2d4a6b9ff525' to type 'Application.Logic.ActivityMonitorBlo'.'while resolving 'organisationBlo' to 'OrganisationBlo' defined in 'file ... Followed by cascading type initializers...
现在要明确一点,这在带有 Spring 1.2.0 的 .NET 2.0 中运行良好。所以问题是,在 1.2.0 和 1.3.2 之间发生了什么变化会导致这个错误?或者,有人可以进一步解释这个错误,以及 aop 是如何导致这个错误的?
除了 Spring.Core、Spring.Aop 和所有其他 Spring.* 参考之外,我没有升级解决方案中的任何其他库。