Visual Studio 正在创建 ref 文件夹

Visual Studio is creating ref folder

我注意到 VS2019 在我的项目中创建了这个 'ref' 文件夹。它只包含一堆 DLL,当我尝试删除它时出现错误。当我关闭 VS 并删除 bin 和 obj 文件夹并重新打开解决方案时,它不存在但不久之后又被创建了。

我找不到太多关于此文件夹的用途及其出现原因的信息。任何信息表示赞赏。我还添加了屏幕截图以便更好地理解。

It contains just bunch of DLL's and I get an error when I try to delete it. When I close VS and delete bin and obj folders and reopen solution it is not there but gets created again shortly after.

如果您的项目没有其他脚本,我认为这个问题是由某些特定的 nuget 包引起的。并且有

并且 nuget 包包含一些 <package_id>.targetsprops 文件或 contentfiles 标签以将一些额外的文件导入您的项目,它创建了 ref 文件夹,其中包括由于它,一些对你的情况有用的文件。

我再详细解释一下

当你创建了一个nuget包,并且想要导入一些额外的文件或者在将这个包安装到一个新的主项目中时做一些额外的操作,你可以使用MSBuild props and targets, contentfiles tag or powershell scripts将一些额外的文件导入到新的主项目中项目。

通常,作者是为了特定的目的而创建的,所以请不要在项目中轻易删除它们,否则会引起其他问题。另外,作者会加入某种恢复机制,防止误删文件无法恢复。

检查这个问题:

我建议你可以新建一个空项目,然后一个一个安装这些nuget包,看看是哪个包起作用的。或者您可以与我们分享这些包裹,以便我们帮助您找到它。