代码之家  ›  专栏  ›  技术社区  ›  MiguelSlv

Moq.CastleProxyFactory“无法加载文件或程序集”Castle.Core

  •  0
  • MiguelSlv  · 技术社区  · 6 年前

    当我试图像这样设置moq对象时:

    mock.Setup(reader => reader.listOFs(1)).Returns(new List<IIAM_OF_Event>() { new IIAM_OF_Event() { ID = 11 } }.AsQueryable());
    

    System.TypeInitializationException:“Moq.ProxyFactory”的类型初始值设定项引发异常---

    System.TypeInitializationException:“Moq.CastleProxyFactory”的类型初始值设定项引发异常---&燃气轮机;System.IO.FileLoadException:无法加载文件或程序集“Castle.Core,Version=4.1.0.0,Culture=neutral,PublicKeyToken=407dd0808d44fbdc”或其依赖项之一。定位的程序集的清单定义与程序集引用不匹配(HRESULT异常:0x80131040)-->System.IO.FileLoadException:无法加载文件或程序集“Castle.Core,Version=4.0.0.0,Culture=neutral,PublicKeyToken=407dd0808d44fbdc”或其依赖项之一。定位的程序集的清单定义与程序集引用不匹配(HRESULT异常:0x80131040)

    IIAM_OF_Event 是一个Linq表。

    1 回复  |  直到 6 年前
        1
  •  3
  •   MiguelSlv    6 年前

    不知何故,测试中集成的一个组件要求使用Castle.Core4.1.0.0版本,但却是包含在构建中的4.0.0.0版本。

    我将此添加到配置文件:

    <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.1.0.0" newVersion="4.0.0.0" />
      </dependentAssembly>
    ...