首页 > 解决方案 > 引用 VB.NET 项目的 C# 项目:找不到程序集“Microsoft.VisualBasic,版本 10.0.0.0”

问题描述

我有一个引用 VB.NET WPF 项目的 C# WPF 项目。C# 项目中的某些窗口使用在 VB.NET 项目中定义的用户控件。最近因为这些 UserControls,我一直无法构建 C# 项目。对于使用 VB.NET UserControl 的每个窗口,生成输出显示以下内容:

error MC1000: Unknown build error, 'Could not find assembly 'Microsoft.VisualBasic, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. Either explicitly load this assembly using a method such as LoadFromAssemblyPath() or use a MetadataAssemblyResolver that returns a valid assembly. Line 37 Position 134.'

如果我向 C# 项目的依赖项添加 Microsoft.VisualBasic 引用,则构建错误得到解决。但是,直到最近才要求这样做。我首先在 Visual Studio Preview 16.4 中注意到它,然后在 16.3 中更改回 Enterprise。我目前正在使用 VS Enterprise 16.3.9,现在也有同样的问题(尽管它以前适用于这个版本)。

我的问题是,是否真的有必要向我的 C# 项目添加 Microsoft.VisualBasic 引用,或者这是别的什么?

标签: c#.netwpfvb.netvisual-studio-2019

解决方案


如果您引用的代码依赖于Microsoft.VisualBasic程序集,则运行时需要能够在运行您的应用程序时找到它。

要么将其添加为应用程序的直接引用,要么确保在 VB.NET 项目中设置引用的Copy Local属性。true


推荐阅读