gpt4 book ai didi

c# - CaSTLe Windsor 3.1 缺少方法异常

转载 作者:行者123 更新时间:2023-11-30 12:48:31 25 4
gpt4 key购买 nike

尝试从测试程序集安装我所有的单独安装程序时,不断抛出一个

 "`{"Method not found: 'Castle.MicroKernel.Registration.ComponentRegistration1<!0> Castle.MicroKernel.Registration.ComponentRegistration1.DependsOn(Castle.MicroKernel.Registration.Dependency)'."}`" 

尽管代码从控制台应用程序/Windsows 服务完美运行并且两个项目的引用相同:

Castle.Core
Castle.Facilities.FactorySupport
Castle.Facilities.Logging
Castle.Facilities.QuartzIntegration
Castle.Services.Logging.NLogIntegration
Castle.Windsor

有谁知道测试程序集如此调用温莎容器构建的原因:

   this.Container = new WindsorContainer(new XmlInterpreter())
.Install(FromAssembly.Named("Assembly.WindowsService",
new CustomWindsorInstallerFactory()));

在任何引用“DependsOn”方法的代码上失败,例如:

container.Register(
Component
.For<ISftpRepository, ISftpFileStoreRepository, AbstractSftpFileStoreRepository>()
.ImplementedBy<ConcreteSftpRepository>()
.Properties(PropertyFilter.IgnoreAll)
.DependsOn(
Dependency.OnConfigValue("host", config.Host),

或:

.ConfigureFor<QuartzJob>(
x =>
x.DependsOn(ServiceOverride.ForKey<IService>().Eq("intraService")))

注意:请注意所有安装类在主应用程序下运行时都能正常工作,这纯粹是运行单元测试时的情况。

感谢您的帮助。

最佳答案

看起来您在某处安装了旧版本的 Windsor,在部署时覆盖了新版本

关于c# - CaSTLe Windsor 3.1 缺少方法异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13969690/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com