【问题标题】:Moq and Moq Contrib VersionsMoq 和 Moq Contrib 版本
【发布时间】:2012-03-20 11:09:50
【问题描述】:

我找不到对齐的 moq 和 moq contrib 版本。我可能只是谷歌失败了。

详情:

是否有适用于 moq 版本 4.0.10827 的 moq.contrib 版本,来自 http://code.google.com/p/moq-contrib/downloads/list 的最新版本给我一个错误:

CA0058:找不到引用的程序集“Moq,版本=4.0.812.4,Culture=neutral,PublicKeyToken=69f491c39445e920”。此程序集是分析所必需的,并被以下人员引用:...

或者有没有资源可以下载最小起订量 4.0.812.4,因为http://code.google.com/p/moq/downloads/list 只有 4.0.10827

即使从 nuget 安装两者都没有帮助。

谢谢。

【问题讨论】:

    标签: moq moqcontrib


    【解决方案1】:

    Moq Contrib 似乎有了新家:http://moqcontrib.codeplex.com/。没有下载,也没有太多关于项目当前状态的信息。

    至少他们知道这个不兼容问题:http://moqcontrib.codeplex.com/discussions/255319 但似乎自去年 4 月以来没有修复它,也没有新版本的 lib。

    您可以尝试自己修复依赖关系并从源代码构建库。

    或者

    我找到了这个 nuget 包Moq.Contrib.Indy

    Moq.Contrib 项目的独立实施,具有 对 Moq 和 Autofac 的最新参考

    我没试过,但也许值得一试......

    【讨论】:

    • 似乎工作正常。它添加了几个额外的包:Autofac、Autofac.CommonServiceLocator 和 CommonServiceLocator
    • 不幸的是,Moq.Contrib.Indy 尚未升级到最新的稳定版 Moq,4.1.1309.1617。在任何情况下,解决方案都需要不要对版本有硬性依赖。
    【解决方案2】:

    我通过以下方式修复它。

    1. 获取源码

    http://code.google.com/p/moq-contrib/downloads/detail?name=Moq.Contrib-0.2-src.zip

    • 然后把目标框架改成4.0

    • 添加 moq 4.0 而不是现有的 moq

    • 注释“verify”和“VerifyAll”方法。 2.0 moq contrib中有虚拟方法

    • 重命名方法调用

    • MockFactory 到 MockRepository 期待Get到SetupGet

    项目中有对 Autofac 的引用。我没有尝试将此引用更改为最新的 autofac。

    【讨论】:

    • 我尝试了 Nitin 的解决方案。但是 Moq Contrib 中缺少 ContextSpecification 的定义。我必须明确地将它添加到库中。之后,这些步骤工作正常。
    【解决方案3】:

    您可以在 app.config 中设置bindingRedirect

    <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
          <dependentAssembly>
            <assemblyIdentity name="Moq" publicKeyToken="69f491c39445e920" culture="neutral" />
            <bindingRedirect oldVersion="4.0.0.0-4.2.1312.1622" newVersion="4.2.1312.1622" />
          </dependentAssembly>
        </assemblyBinding>
      </runtime>
    

    4.2.1312.1622 应替换为最新的 Moq 版本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-10-05
      • 1970-01-01
      • 1970-01-01
      • 2013-01-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多