【问题标题】:Cross referencing over 2 projects doesn't compile交叉引用超过 2 个项目无法编译
【发布时间】:2011-03-20 22:18:30
【问题描述】:

我会保持简单。

我有一个 ASP MVC 项目。它包含所有的逻辑和类。工作正常。

我现在想做一个控制台项目来做一些家务。我将其添加为同一解决方案中的新项目,添加对 MVC 项目 dll 的引用,因此我可以访问相同的逻辑而无需重复。到目前为止一切顺利...

最后我去编译控制台应用程序,突然出现“找不到类型或命名空间 xyz”错误,同时丢失了所有代码颜色格式。好像我已经删除了引用,但它肯定仍然存在。

【问题讨论】:

  • 缺少什么类型?它是您编写的自定义类还是 System.* 命名空间中的某个类?
  • “添加对 MVC 项目 dll 的引用” - 你的意思是去浏览并选择 yourproject.dll 以添加到引用,或者你去 Project\从列表中选择你的项目?在解决方案中引用项目而不是实际编译的 DLL 时,我看到了更好的结果。

标签: .net asp.net-mvc visual-studio


【解决方案1】:

检查项目目标。创建控制台项目时,它默认为 .NET 4.0 Framework Client Profile,它是完整 .NET 4.0 框架的子集。客户端配置文件不支持 Web 项目,因此对 System.Web 程序集(以及 Mvc 程序集)的引用将不起作用。您可以通过选择 Project Properties 页面并选择非 Client Profile 目标来更改项目目标。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-28
    • 2019-01-18
    • 1970-01-01
    • 2021-09-14
    • 2012-02-17
    • 2021-10-26
    • 2019-07-13
    相关资源
    最近更新 更多