【问题标题】:Amazon Mechanical Turk DLL references keep disappearing during compilationAmazon Mechanical Turk DLL 引用在编译期间不断消失
【发布时间】:2011-06-20 06:50:42
【问题描述】:

我已经为 Mechanical Turk 下载并编译了 Amazon 的 .NET SDK,生成了两个 DLL:Amazon.WebServices.MechanicalTurk.dll 和 Amazon.WebServices.MechanicalTurk.Domain.dll。 然后我创建了一个新的 WPF 项目并添加了两个 DLL 作为引用。当我从它们的空间创建对象时,Intellisense 可以轻松浏览程序集——我可以看到里面的类。 但是,当我编译时,我从编译器中收到“找不到类型”错误。 Intellisense 不再适用于 Amazon 命名空间,并且 DLL 已从 Visual Studio 内的对象浏览器窗口中消失,尽管它们仍被列为解决方案资源管理器中的引用。 这是怎么回事?我想我错过了一些明显的东西。例如,我可以看到 MTConfig,但是当我尝试实例化它时,它会失败,我需要重新添加 DLL 以重试。

谢谢!

【问题讨论】:

    标签: c# visual-studio-2010 assemblies amazon mechanicalturk


    【解决方案1】:

    您是如何添加参考的?您是否将 DLL 复制到新项目的 output 文件夹并在那里添加对它们的引用?如果VS在构建之前擦除输出文件夹,我可以想象给出你描述的行为。如果发生这种情况,只需将 DLL 移动到不同的目录(我通常创建一个“lib”目录)并将引用指向那里。

    【讨论】:

    • 两种方法我都试过了。首先,我直接在它们的输出文件夹中引用了 DLL——对应于 Mechanical Turk SDK 项目的那个,它是一棵完全不同的树。几次失败后,我将 DLL 复制到我自己项目的根目录(想知道为什么不这样做),并在那里记录了相同的行为。在这两种情况下,DLL 文件都没有被删除。
    • @Mike:你把“复制本地”设置为真了吗?
    • @Mike:DLL 是否被复制?
    • @Mike:这看起来非常奇怪。重新启动 Visual Studio 并从头开始构建没有帮助?
    【解决方案2】:

    我为解决同样的问题所做的是重新编译 DLL,将项目属性中的 .NET 版本从 2.0 更改为 4.0。不知道为什么会这样,但就我而言,它解决了这个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-10
      相关资源
      最近更新 更多