dll - 如何使用ILSpy反编译查看Nuget包dll源码
问题描述
我已经安装了一些 asp.net 核心 mvc dll(Microsoft.AspNetCore.Mvc.Abstraction.dll)。我想反编译它并查看源代码。该dll被添加到我的项目>依赖项> Nuget。
但是,我不确定 dll 在我的系统中的确切位置。
有没有一种快速的方法可以在 ILSypy 中启动添加的 dll 并查看代码或至少查看对象继承树?
谢谢。
解决方案
ASP.NET Core 是开源的,所以正如 Hans 作为对您问题的评论所写的那样,您可以直接查看源代码,无需反编译。
但为了将来参考,NuGet dll 被提取到两个位置之一。仍然使用 packages.config 的旧项目,通常将 dll 提取到一个文件夹,该文件夹命名packages
为文件所在的子文件夹.sln
。
使用PackageReference
的包,包被解压到您帐户的全局包文件夹中,默认情况下%userprofile%\.nuget\packages
位于 Windows 以及~/.nuget/packages
Linux 和 Mac 上。您还可以查看项目obj\project.assets.json
文件以查找所有引用的路径。
所有路径都可以使用nuget.config
设置(甚至使用 PackageReference 的项目的 msbuild 属性)进行修改。但如果是这种情况,您或您的队友可能会知道,所以我上面列出的文件夹的默认位置应该是正确的。
推荐阅读
- reactjs - 如何在 React 中使用刷新令牌保持刷新令牌
- java - 无法在 IE 中执行 Selenium Java
- javascript - 酶无法识别日期
- python - 无法使用 Selenium 切换到 iFrame
- vb.net - 尝试调用 API 时出现 System.Threading.Tasks 错误
- html - 在 Oracle APEX 隐藏项中连接特殊字符
- angular - Why do we test HTTP requests with HTTPClientTestingModule if it doesn't make a real API request or increase code coverage?
- pandas - Change NaN to None in Pandas dataframe
- jquery - Form Builder does not support on WordPress
- javascript - Making an element display like it was an another element