【问题标题】:Show library file in solution explorer在解决方案资源管理器中显示库文件
【发布时间】:2017-10-20 11:07:38
【问题描述】:

我不知道这在 Visual Studio 中是否可行,但在 Eclipse 中我可以转到方法的声明,即 asList() 方法。

现在,如果我们查看声明,它会显示它来自 Arrays.class 库文件。在下图中,它还显示了包资源管理器中的库文件。

在 Visual Studio 中,我尝试过使用 IsDevelopment() 方法。

但是 Visual Studio 不会在解决方案资源管理器中显示库文件。如下图所示。

在 Visual Studio 中,我已经尝试选中“在解决方案资源管理器中跟踪活动项目”选项以打开该功能。但它不适用于库文件。

【问题讨论】:

  • 但是窗口顶部显示Assembly Microsoft.AspNetCore.Hosting.Abstraction 还不足以显示有关图书馆的信息吗?

标签: c# asp.net visual-studio asp.net-core visual-studio-2017


【解决方案1】:

我不知道这在 Visual Studio 中是否可行

不,虽然您没有库源代码并且只能访问已编译的版本 (dll) 文件,但您无法转到其源代码。

在 Visual Studio 中,您可以通过在其名称上按 F12 来查看每个函数/类的 meta data 信息。但是,如果您在当前项目/解决方案中有库源代码,您可以跳转到它的代码。

但如果您仍想查看 dll 文件源代码,最好使用 redgates .net reflector 或 jetbrains resharper 反编译器等反编译器。也有开源的,比如:

http://www.jetbrains.com/decompiler/

http://ilspy.net/

【讨论】:

    【解决方案2】:

    您只能查看您拥有源代码的程序集的源代码。由于您没有源代码,只有编译版本,您只能看到元数据。您可以反编译源代码以将其带回 C#,但这不是原始源代码,而且更难阅读。

    幸运的是,在这种特殊情况下,您正在处理的是开源的 ASP.NET Core,其代码托管在 GitHub 上。 HostingEnvironmentExtensions 的原始源代码可在此处获得。

    如果您想查看没有源代码的程序集的源代码,请问自己:“这是开源的吗?”。如果是,请查找它的托管位置。

    【讨论】:

    • 是否也可以将源代码导入Visual Studio?因为我无法打开在解决方案资源管理器中看到的其他库文件(因为它是元数据)。
    • @superkytoz 你在 GitHub 上看到代码了吧?您知道如何克隆存储库吗?那么您知道如何将现有项目添加到您的解决方案中了吗?
    • 我只是不知道如何将它添加到现有项目中的解决方案中。如果你想解释,我很高兴收到你的解释。
    • 您将项目添加到您的解决方案中,然后从您的原始项目中添加对它的引用。
    • 它部分工作。当我将光标放在env 变量的引用类型上时,它转到了IHostingEnvironment 接口的源代码。但是,当我的光标位于 IsDevelopment() 方法上时。然后我不能去声明。因为我收到了一个弹出窗口“无法导航到插入符号下的符号。”。所以我已经从项目中删除了源代码。
    猜你喜欢
    • 2011-02-04
    • 1970-01-01
    • 2019-04-23
    • 2015-01-10
    • 1970-01-01
    • 2014-03-21
    • 2019-12-30
    • 2013-03-04
    • 2015-07-22
    相关资源
    最近更新 更多