我在一个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文件的绝对路径…我读到过关于长度的问题。这是一个可能的问题吗?

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


当前回答

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

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

其他回答

我也遇到过同样的问题。首先,我从工具> nuget包管理器>包管理器设置中清除所有nuget缓存,然后单击“清除所有nuget缓存”。打开Powershell,运行“dotnet restore”,然后运行“dotnet build”。就我而言,这个解决方案纠正了我的错误。

我的问题实例是由一个公共项目引起的,该项目中有重复的类名(在不同的文件名下)。奇怪的是,Visual Studio无法检测到这一点,而只是破坏了构建过程。

在获得最新的(Team Foundation Server (TFS)命令)后,我遇到了这个问题。

在解决了冲突之后,我发现使用了项目中不存在的名称空间的语句。

我删除了using语句然后清理并重建,一切正常。

以前的解决方案都不适合我,所以我将与大家分享。

我有这个问题后,合并一些新的类库从另一个分支相互引用。删除项目中的引用并重新创建它们最终解决了这个问题。显然Visual Studio合并了错误的文件路径。

检查主项目的.csproj文件。如果您在解决方案中删除项目或更改引用,Visual Studio不会清除这些问题。

我在.csproj文件中引用了三次旧项目,编译器向这些已删除的项目显示了此错误。