首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Castle Windsor 3.1缺少方法异常

Castle Windsor 3.1缺少方法异常
EN

Stack Overflow用户
提问于 2012-12-20 18:07:07
回答 1查看 1.3K关注 0票数 4

尝试从测试程序集安装所有独立的安装程序时,总是会抛出

代码语言:javascript
复制
 "`{"Method not found: 'Castle.MicroKernel.Registration.ComponentRegistration1<!0> Castle.MicroKernel.Registration.ComponentRegistration1.DependsOn(Castle.MicroKernel.Registration.Dependency)'."}`" 

尽管代码可以很好地从控制台应用程序/Windsow服务运行,而且两个项目的引用是相同的:

代码语言:javascript
复制
Castle.Core
Castle.Facilities.FactorySupport
Castle.Facilities.Logging
Castle.Facilities.QuartzIntegration
Castle.Services.Logging.NLogIntegration
Castle.Windsor

有人知道为什么调用windsor容器的构建的测试程序集会这样:

代码语言:javascript
复制
   this.Container = new WindsorContainer(new XmlInterpreter())
       .Install(FromAssembly.Named("Assembly.WindowsService", 
                new CustomWindsorInstallerFactory()));

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

代码语言:javascript
复制
container.Register(
    Component
         .For<ISftpRepository, ISftpFileStoreRepository, AbstractSftpFileStoreRepository>()
         .ImplementedBy<ConcreteSftpRepository>()
         .Properties(PropertyFilter.IgnoreAll)
         .DependsOn(
              Dependency.OnConfigValue("host", config.Host),

或者:

代码语言:javascript
复制
.ConfigureFor<QuartzJob>(
      x => 
      x.DependsOn(ServiceOverride.ForKey<IService>().Eq("intraService")))

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

谢谢你的帮助。

EN

回答 1

Stack Overflow用户

发布于 2013-01-16 12:16:36

看起来你有一个旧版本的Windsor,在部署时会覆盖新版本

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13969690

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档