删除未使用的引用 | Visual Studio 2019(16.10)新功能试用

Posted dotNET跨平台

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了删除未使用的引用 | Visual Studio 2019(16.10)新功能试用相关的知识,希望对你有一定的参考价值。

当解决方案很小时,我们清楚地知道解决方案中使用了哪些项目引用和NuGet包,要想清理它们很容易。而对于大型的解决方案,有哪些包在使用中,开发人员很难找到它们,或者找起来可能很耗时。

Visual Studio 2019(16.10)添加了“删除未使用的引用”命令,用于清理未用的项目引用和 NuGet 包。

如果找不到此选项,请在“工具” > “选项” > “文本编辑器” > “C#” > “高级”中启用它

下面我们来试用一下这个功能。

创建新项目并添加引用

创建一个ConsoleApp1项目和ClassLibrary1项目,ConsoleApp1引用了ClassLibrary1项目和Newtonsoft.Json包。

代码如下:

static void Main(string[] args)
{
    var a = new ClassLibrary1.Class1() { Name = "公众号“My IO”" };
    Console.WriteLine(Newtonsoft.Json.JsonConvert.SerializeObject(a));
}

删除未使用的引用

在解决方案资源管理器的ConsoleApp1项目上点击右键,选择“删除未使用的引用”,弹出窗口。

(汗)有Bug: 明明使用了ClassLibrary1.Class1,它居然提示我未使用!!!

修改代码,去除Newtonsoft.Json的使用:

static void Main(string[] args)
{
    var a = new ClassLibrary1.Class1() { Name = "公众号“My IO”" };
    Console.WriteLine(a);
}

再次选择“删除未使用的引用”,这次Newtonsoft.Json包正常提示未引用了。

将ClassLibrary1保留,点击“应用”,完成后包引用已去掉,而且能够编译通过。

结论

毕竟是实验性功能,目前在正式项目上还是慎用。

欢迎关注我的个人公众号”My IO“

以上是关于删除未使用的引用 | Visual Studio 2019(16.10)新功能试用的主要内容,如果未能解决你的问题,请参考以下文章

从现有的 Visual Studio 项目中删除未使用的 js 和 css 文件

Visual Studio 调试器可以显示未引用/未转义的字符串吗?

Visual Studio 项目正在引用已删除的共享项目

与代码块一起使用时,使用 Visual Studio 创建的静态库显示对 Myfunction 的未定义引用

如何在 Visual Studio 中删除未使用的对象?

Visual Studio 2017 Collapsing 也删除了未使用的使用