由于"缺少"引用,无法构建发布配置

Jak*_*ake 9 c# visual-studio

我有一个包含6个左右项目的解决方案,在调试配置时都可以正常构建.但是,当我尝试在发布模式下构建它时,我得到53个错误,所有人抱怨无法找到DLL.这只是一些消息:

错误:

  • 'AnimatedSplashScreen'不包含'Message'的定义,并且没有扩展方法'Message'接受类型为'AnimatedSplashScreen'的第一个参数'(您是否缺少using指令或程序集引用?)
  • 当前上下文中不存在名称"DataContext".
  • 当前上下文中不存在名称"InitializeComponent".
  • XML名称空间'clr-namespace中不存在标记'MetroProgressBar':MahApps.Metro.Controls; assembly = MahApps.Metro'.39

警告

  • 无法解析此引用.无法找到程序集"EntityFramework,Version = 6.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089,processorArchitecture = MSIL".检查以确保磁盘上存在程序集.如果您的代码需要此引用,则可能会出现编译错误.
  • 无法解析此引用.无法找到程序集"Fluent,Version = 3.5.1.198,Culture = neutral,PublicKeyToken = 3e436e32a8c5546f,processorArchitecture = MSIL".检查以确保磁盘上存在程序集.如果您的代码需要此引用,则可能会出现编译错误.
  • 无法解析此引用.无法找到程序集"GalaSoft.MvvmLight,Version = 5.2.0.37222,Culture = neutral,PublicKeyToken = e7570ab207bcb616,processorArchitecture = MSIL".检查以确保磁盘上存在程序集.如果您的代码需要此引用,则可能会出现编译错误.

我该如何解决这个问题?

调试路径保持不变,但每个项目发布路径都已设置为构建到特定文件夹中.

编辑:这是我的错误列表的样子.所有错误似乎都与第三方软件包有关. 错误和警告

Eph*_*dra 12

我遇到了类似的问题.Project在Debug模式下构建良好,但在Release模式下,缺少一些引用.

我发现,缺少引用的dll都位于bin/debug文件夹中.我将它们移向中立位置,再将它们添加到项目中,问题就解决了.


Jak*_*ake 5

正如费尔伯特所指出的。项目文件中存在一些损坏的参考路径。更正这些路径后,一切都会按预期构建。

但不知道他们是如何被打破的。有什么想法吗?

  • 对我来说,发生这种情况是因为我将项目移动到不同的目录,然后项目中许多文件的相对路径被破坏。奇怪的是,即使在清理和重建之后,它仍然可以很好地进行调试,但对于不同的配置则不然。 (2认同)