阻止 Visual Studio 在复制粘贴时自动导入命名空间

Prevent Visual Studio from auto import namespace when copy paste

提问人:Yiming 提问时间:10/20/2022 更新时间:10/22/2022 访问量:2627

问:

我正在将Visual Studio与Unity一起使用。当我在 Visual Studio 中复制并粘贴代码时。它会自动在顶部添加一个不必要的命名空间。随着时间的推移,查看是否有许多未使用的命名空间非常烦人。请问这是否是一个错误,或者复制粘贴时如何关闭自动导入命名空间?

从建议的名称来看,我认为 Visual Studio 混淆了“长度”和“长度”enter image description here

以下是重现问题的步骤

enter image description here

C# visual-studio unity-game-engine 命名空间

评论

0赞 BugFinder 10/20/2022
可能是因为代码不会编译,并且它试图以只有计算机才能做到的方式提供帮助。如果您定义了长度,然后点击粘贴,它会停止烦人吗?
0赞 Hossein Sabziani 10/20/2022
@Yiming 应在 Visual Studio 中禁用“移动文件时启用命名空间更新”。但我在 2022 版本中找不到这个选项!
0赞 Yiming 10/20/2022
使用定义的变量粘贴不会导入命名空间。但是我想在下班后手动定义变量。总有包含多个变量的代码,我不能保证它们都已定义。
1赞 madreflection 10/20/2022
在 C# 编辑器选项中,在“高级”、“使用指令”下,取消选中“在粘贴时添加缺少的使用 指令”。
0赞 TarHalda 10/20/2022
@madreflection如果你把这个评论变成答案,那就太好了!

答:

24赞 keipala 10/22/2022 #1

在 Visual Studio 的页面顶部,转到“工具”>“选项”>“文本编辑器”>“C# >高级”> 取消选中“在粘贴时使用指令添加缺失项”选项,然后单击页面底部的“确定”。然后重新启动 Visual Studio

对于某些人来说,注意 Tab 自动补全仍会使用 Command 自动添加缺失的内容可能会很有用。

enter image description here

下面是一个选中了该选项的示例(示例细节不相关,但在本例中,属性被粘贴到 ASP.Net Core Razor 页面):Checked Option

下面是一个未选中该选项的示例:Unchecked option

评论

0赞 Davak72 8/3/2023
谢谢!正是我需要的。Visual Studio 在我的最新项目中自动包含了错误选择的模棱两可的类。