我在一个WPF, c# 3.0项目上工作,我得到了这个错误:

Error 1 Metadata file
'WORK=- \Tools\VersionManagementSystem\BusinessLogicLayer\bin\Debug
\BusinessLogicLayer.dll' could not be found C:\-=WORK=- \Tools
\VersionManagementSystem\VersionManagementSystem\CSC VersionManagementSystem

这是我如何引用我的usercontrols:

xmlns:vms="clr-namespace:VersionManagementSystem"
<vms:SignOffProjectListing Margin="5"/>

每次构建失败后都会发生这种情况。我能得到解决方案编译的唯一方法是注释掉所有用户控件并重新构建项目,然后取消注释用户控件,一切正常。

我已经检查了构建顺序和依赖项配置。

正如你所看到的,它似乎截断了DLL文件的绝对路径…我读到过关于长度的问题。这是一个可能的问题吗?

注释、构建和取消注释是非常烦人的,构建变得非常烦人。


当前回答

在我的例子中,我注释掉了一个特定(空)命名空间中的类:

namespace X.Y.Z.W
{

    // Class code

}

当我删除命名空间代码和它的导入(使用)命令时,问题就解决了。

在构建中,它还说-随着项目丢失的DLL文件:

类型或命名空间名称“W”在命名空间“X.Y.Z”中不存在(您是否缺少一个程序集引用?)

其他回答

对我来说,它发生在我将一个新项目纳入解决方案时。

Visual Studio自动选择。net framework 4.5。

像其他库一样,我将版本改为. net 4.5.2,它可以工作。

使用Blazor WebAssembly ASP。NET Core托管应用程序,当我删除天气预报模型时出现了这个问题,这导致了一个构建错误,不可见的错误。

如果是这种情况,只需删除FetchData。剃刀锉,你就可以出发了!

以我为例,在注意到我引用了. net Framework 4.7项目作为. net Framework 4.6.1项目的依赖项后,我解决了这个问题。在将项目4.7迁移到4.6.1之后,我的应用程序正常编译

我的项目也面临着同样的问题,我在一个解决方案中添加了控制台应用程序,但那些其他解决方案不起作用,并显示未找到.dll,所以我尝试了这个方法:

右键单击有问题的项目 单击应用程序选项卡,这是默认的 将输出类型控制台应用程序更改为类库

在我的例子中:去添加引用。在引用管理器窗口中取消对其他项目的DLL项目的勾选。保存它。再次将引用DLL项目添加到其他项目。