【问题标题】:.NET - Project Won't Build.NET - 项目不会构建
【发布时间】:2010-08-03 15:15:03
【问题描述】:

我有一个 WPF/ASP.NET 项目,我已经有一段时间没有工作了(ResourceBlender.NET - http://resourceblender.codeplex.com/)。该项目包含一个 DataLayer 和一个 Core 层,它们都被 WPF 应用程序和解决方案中的 ASP.NET 项目使用。

如果 WPF 项目被设置为启动项目并且我尝试构建应用程序,我得到“找不到类型或命名空间名称'whatever'(您是否缺少 using 指令或程序集引用?)” .

当我尝试构建、运行或调试时,错误列表会显示这些,但双击并转到错误显示编辑器中没有实际错误,并且所有内容都正常突出显示。

ASP.NET 项目构建良好。我对此一无所知,因为没有明显的错误需要修复 - 它可能是某处的元数据吗?

【问题讨论】:

  • 嗨!检查 VS 中的 References 文件夹是否发现缺少任何组件?
  • 有时输出窗口会给你比错误列表更好的信息。转到工具 |选项 |项目和解决方案并选中“构建开始时显示输出窗口”。从上到下阅读输出 - 它可能会为您提供有关问题所在的线索。
  • 只是在黑暗中拍摄:您是否将项目从 VS 2008 移动到 VS 2010,并且解决方案中的所有项目都针对相同的框架版本?在 2010 年,如果 1 个项目引用了另一个项目,并且它们针对不同的框架(即使是 2.0 与 3.5,这是相同的 CLR),这是一个构建错误。在 08 年,它不是。我不记得脑海中出现的错误,但它有点模棱两可,可能与您遇到的错误相同。

标签: c# .net asp.net wpf compiler-errors


【解决方案1】:

检查所有程序集是否不针对 3.5/4.0 客户端配置文件(罪魁祸首可能是 WPF 应用程序)。这将导致您所描述的错误消息。

【讨论】:

  • 这在过去从来没有引起过问题,也没有完全解决问题(我需要调整一些命名空间并改变一些其他的东西),但我欣喜若狂。 :) 谢谢
  • 问题是,如果您的程序集之一依赖于在 .Net 4.0 之前构建的程序集 - 它们与 ClientProfile 不兼容。但是,我很高兴你能正常工作:-)
  • 我遇到了一个问题,我的项目出于某种原因引用了 .NET 4.5 dll。不知道从哪里来,但它有。
【解决方案2】:

如果无法查看您的解决方案设置,这种类型的东西真的很难调试,但我会尝试以下方法:

  1. 扩展 WPF 项目中的引用,确保它们都在解析
  2. 仔细检查您的所有参考资料都没有将“特定版本”设置为 True 并指向旧版本/不存在的版本
  3. 对您的解决方案进行“清理”,关闭 VS 并删除您的 bin 和 obj 目录等,以清除可能会破坏您的构建的 dll 的潜在旧副本

祝你好运!

【讨论】:

    【解决方案3】:

    尝试以下方法:

    • 右键单击解决方案上的“清洁解决方案”
    • 尝试分别构建每个项目
    • 检查项目中的引用是否缺少程序集引用

    【讨论】:

      【解决方案4】:

      这样的编译问题可能会让人不知所措。通常最好按照以下提示中的建议一次对一个项目进行故障排除: 5 Debugging Tips for a Solution That Won't Compile

      【讨论】:

        【解决方案5】:

        实际阅读输出窗口文本。

        其中经常出现相关的错误或警告,但在点击错误列表窗口链接时并不明显。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-11-25
          • 2021-12-19
          相关资源
          最近更新 更多