41

我在 .NET Framework 4.0 上,在 VisualStudio 2012 中构建 C# Web 应用程序。我添加了 Microsoft.VisualBasic 作为对项目的引用。我在使用以下代码行时遇到问题:

使用 Microsoft.VisualBasic.FileIO;

构建解决方案返回错误:命名空间“Microsoft.VisualBasic”中不存在类型或命名空间名称“FileIO”(您是否缺少程序集引用?)

我已删除并重新添加了对 Microsoft.VisualBasic 程序集的引用,但仍然出现错误。Microsoft.VisualBasic 以及 Microsoft.VisualBasic.Compatibility、Microsoft.VisualBasic.Compatibility、Microsoft.VisualBasic.PowerPacks.Vs 和 Microsoft.VisualBasic.Vsa 都在 GAC 中。

请让我知道如何让 VS2012 识别 FileIO 命名空间。

4

3 回答 3

71
  1. 右键单击您的项目并选择添加引用...

  2. 在 Reference Manager 中,展开 Assemblies 并选择 Framework。然后选中 Microsoft.VisualBasic 复选框并单击确定。

于 2013-06-17T11:16:38.277 回答
1

我有类似的问题,通过将 TargetFramework(在 .csproj 中)从netstandard2.0更改为netcoreapp3.0来解决。

于 2019-10-06T14:45:37.740 回答
0

应用程序引用不可用于应用程序中的未编译文件(aspx、ashx)。此问题有两种解决方案,如下所示:

1) 将您的代码移动到应用程序的已编译部分(cs/vb 文件)

或者

2)添加对网络配置的引用

我的参考资料在 ashx 文件中。我只是将 ashx 文件中的代码复制到剪贴板,从项目中删除文件,添加一个新的通用处理程序(在 Visual Studio > 添加 > 通用处理程序中单击鼠标右键),输入与以前相同的名称,然后粘贴来自将剪贴板放到 Visual Studio 打开的 cs 文件编辑器中。我现在有一个 cs 文件,它将与项目一起编译并使用项目引用。文件名相同,因此无需更新任何其他内容——只需重新构建和部署即可。

于 2019-12-06T16:50:21.647 回答