繁体   English   中英

在 Visual Studio 中查找命名空间的引用

[英]Find reference for namespace in Visual Studio

我正在研究 ac# 项目。 它引用了很多包,还有一些包引用了其他包。 所以程序中使用的命名空间不一定来自直接引用。 对于特定的 using 语句,有没有办法找出它源自哪个引用(通过引用,我的意思是外部 DLL/NuGet 包)? 谢谢你。

例如,项目引用名为 Package1 的 Nuget 包。 在 Package1 中,我们有名为 Namespace1 的命名空间。 然后 Package1 引用 Package2,它有一个名为 Namespace2 的命名空间。 在您的代码中,您可以拥有

using Namespace2;

但是您如何知道哪个程序集或 Nuget Package Namespace2 源自(在本例中为 Package1)?

我不知道在Visual Studio中执行此操作的本机方法。 但是, JetBrains ReSharper可以做到这一点。 请注意,单个名称空间导入并不绑定到单个程序集。 导入名称空间(使用语句)可以轻松地将几个不同程序集中的类型引入作用域。

有了ReSharper,我只需选择名称空间并按F12。 您可以看到System.Collections.Generic在此项目引用的四个程序集中定义。

ReSharper名称空间查找

我在 Visual Studio 2019 中尝试了harlam357 的答案,但失败了(下图)。

1.

然后,我做了一个技巧。 我将引用转换为注释,发现实现方法的错误行属于命名空间。 通过这个方法我得到了根引用。

2.

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM