无法从程序集错误加载类型

2023-12-01

我编写了以下简单的测试来尝试学习温莎城堡的流畅界面:

using NUnit.Framework;
using Castle.Windsor;
using System.Collections;
using Castle.MicroKernel.Registration;

namespace WindsorSample {
    public class MyComponent : IMyComponent {
        public MyComponent(int start_at) {
            this.Value = start_at;
        }
        public int Value { get; private set; }
    } 
    public interface IMyComponent {
        int Value { get; }
    }

    [TestFixture]
    public class ConcreteImplFixture {
        [Test]
        public void ResolvingConcreteImplShouldInitialiseValue() {
            IWindsorContainer container = new WindsorContainer();
            container.Register(Component.For<IMyComponent>().ImplementedBy<MyComponent>().Parameters(Parameter.ForKey("start_at").Eq("1")));
            IMyComponent resolvedComp = container.Resolve<IMyComponent>();
            Assert.AreEqual(resolvedComp.Value, 1); 
        }
    }
}

当我通过 TestDriven.NET 执行测试时,出现以下错误:

System.TypeLoadException : Could not load type 'Castle.MicroKernel.Registration.IRegistration' from assembly 'Castle.MicroKernel, Version=1.0.3.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc'.
at WindsorSample.ConcreteImplFixture.ResolvingConcreteImplShouldInitialiseValue()

当我通过 NUnit GUI 执行测试时,我得到:

WindsorSample.ConcreteImplFixture.ResolvingConcreteImplShouldInitialiseValue:
System.IO.FileNotFoundException : Could not load file or assembly 'Castle.Windsor, Version=1.0.3.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc' or one of its dependencies. The system cannot find the file specified.

如果我打开在 Reflector 中引用的程序集,我可以看到它的信息是:

Castle.MicroKernel, Version=1.0.3.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc

并且它肯定包含Castle.MicroKernel.Registration.IRegistration

可能发生什么事?

我应该提到的是,二进制文件取自最新建造的城堡虽然我从未使用过 nant,所以我没有费心从源代码重新编译,只是将文件放在 bin 目录中。我还应该指出,我的项目编译没有问题。


如果您有一个项目引用另一项目(例如引用“类库”的“Windows 应用程序”类型)并且两者具有相同的程序集名称,您将收到此错误。您可以对引用的项目进行强命名,或者(更好)重命名引用项目的程序集(在 VS 中项目属性的“应用程序”选项卡下)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法从程序集错误加载类型 的相关文章

随机推荐

  • 使用 Unix 工具解析 JSON

    我正在尝试解析从curl请求返回的JSON 如下所示 curl http twitter com users username json sed e s g awk v k text n split 0 a for i 1 i lt n i
  • vba、getElementsByClassName、HTMLSource的双引号不见了

    我用 VBA 抓取一些网站是为了好玩 我使用 VBA 作为工具 我使用 XMLHTTP 和 HTMLDocument 因为它比 internetExplorer Application 更快 Public Sub XMLhtmlDocume
  • 易失性和编译器优化

    如果关闭编译器优化 即 gcc o0 可以说 易失性 关键字没有区别吗 我制作了一些示例 C 程序 并且仅当打开编译器优化时才在生成的汇编代码中看到易失性和非易失性之间的差异 即 gcc o1 不 这样的说法没有任何依据 volatile具
  • 根据索引获取数组项

    我正在尝试根据我拥有的索引从 char 数组中获取一个项目 我之前使用代码来获取指定项目的索引 但现在我想要相反的方法 获取指定索引的项目 我尝试了一些方法 但无法使其正常工作 我想要这样的东西 char arrayChar Array G
  • 使用 Homebrew 在 Snowleopard 上升级 Python 现在 pip 和 easy_install 不起作用

    我是 python 新手 我已更改路径以指向新的 python 2 7 但 pip 和 easy install 以及 Mercurial 仍在查看默认安装的版本 2 6 我该如何解决 你需要安装pip and setuptools再次 这
  • 由于缺少 msvcp80.dll,程序无法启动

    我在装有 win 7 32 位 Visual Studio 2010 的机器上工作 我尝试在发布模式下运行在其他计算机 win7 64位 上正常工作的代码 并出现以下消息 The program can t start because ms
  • WebsphereMQ 与 .Net Core 2.2

    我正在尝试使用 Net Core 2 2 连接到 WebsphereMQ 队列 我真的很困惑如何做到这一点 在展示我正在尝试 和失败 的内容之前 我想先澄清一下 Which lib should I use and how to get i
  • 常用表达。匹配两个单词之间的特定单词

    我使用 C 我有一个字符串 wordA wordB wordC wordB wordD 我需要匹配 wordS 和 wordS 之间出现的所有单词 我使用lookahead和lookbehind来匹配wordA和wordD之间的所有内容 如
  • Laravel 5.2 - 元标记规范 Url

    我正在尝试将元标记集成到我的布局 laravel 中 应用程序布局 view section title Homepage stop section canonical stop 我试图获取我的视图的当前网址 但实际上我收到此错误 未找到
  • 使用 JS 查找并替换文档中的特定文本字符

    我想知道是否有一种轻量级的方法可以使用 JavaScript 或 jQuery 来嗅出文档中的特定文本字符 说 并找到该字符的所有实例 进而 编写一个能力来替换这个的所有实例 我为初学者找到了这个片段 var str test 39 str
  • 如何在 Next.js 中设置没有 {styles.red} 的 className

    描述 我只想在 Next js 中使用没有 styles class name 约定的类的纯名称 我用 google 搜索并发现我需要配置 next config js 文件 那么 有人对此有好的参考吗 我有这个 它在 Next js 中运
  • Python for .NET:在多个版本中使用相同的 .NET 程序集

    我的问题 我有一个有 2 个版本的程序集 并且想在我的 Python 项目中同时使用它们 NET 库安装在 GAC MSIL 中 具有相同的公共令牌 lib dll 1 0 0 0 lib dll 2 0 0 0 在Python中我想要类似
  • 多选表视图单元格且无选择样式

    我有一个基本的 UITableView 我想启用Mail app样式复选标记 但没有选择样式 我有以下片段 define UITableViewCellEditingStyleMultiSelect 3 UITableViewCellEdi
  • Opencv重复性结果没有意义?

    我正在尝试通过重复性标准评估 SIFT 和 SURF 检测器 我发现下面的方法可以找到重复性 SIFT和SURF的对应关系 cv evaluateFeatureDetector img 1c img 2c h12 key points 1
  • 如何检测打印机是否连接?

    如何检测我的电脑中是否安装了打印机以及打印机连接是否处于活动状态 此类将列出所有已安装的打印机并为您提供打印机的状态 using System using System Management public class MyClass sta
  • 我在运行我的 React-native 应用程序时遇到以下问题

    无法使用 adb反向 连接到开发服务器 spawnSync home sumit Android platform tools adb ENOENT 我也尝试过使用 adb reverse tcp 8081 tcp 8081 但没有运气 现
  • YAML 多行数组

    In YAML 您可以轻松创建多行字符串 但是 我希望能够使用以下命令创建多行数组 主要是为了配置文件中的可读性 特点 A YAML array可以表示为 key1 key2 key3 A YAML sequence使用破折号 后跟空格 然
  • 无需模型检查即可实现符号执行

    我该如何实施symbolic execution for particular language不使用model checking and Finite State Machine FSM 例如not例如Java Path Finder 我
  • 如何提高 Watson Speech to Text 的准确性?

    据我了解 Watson Speech To Text 在某种程度上针对口语对话和 1 或 2 个发言者进行了校准 我还知道它可以比 WAV 和 OGG 更好地处理 FLAC 我想知道如何从声学角度提高算法识别能力 我的意思是 增加音量有帮助
  • 无法从程序集错误加载类型

    我编写了以下简单的测试来尝试学习温莎城堡的流畅界面 using NUnit Framework using Castle Windsor using System Collections using Castle MicroKernel R