我正在使用一些在内部引用多个 nuGet 包的第三方 .dll。为了让我能够使用第三方 .dll,我需要以某种方式找出需要安装哪些 NuGet 包。
是否有工具或策略可以帮助我确定缺少哪些 NuGet 包?
我尝试运行我的程序,但抛出了一个异常,表明我缺少一个包。我安装了该软件包并且不再出现该错误。但是,我确实收到一条错误消息:
The type initializer for 'SomeStaticClass' threw an exception
我怀疑我仍然缺少一些引用资料。有关如何找出我缺少哪些引用资料或 NuGet 包的任何想法吗?
最佳答案
在这种情况下我所做的就是使用一个名为“Just Decompile”的工具(这样的工具有很多,这只是我目前使用的一个。)
它集成到 Windows 资源管理器中,因此您可以右键单击托管 DLL/EXE,然后将弹出上下文菜单,并为您提供“仅反编译打开”选项。此时,将弹出一个 UI 并显示你它引用的一切:托管和 native 库:
因此您可以在此处看到“LCCShell.exe”依赖于几个无法解析的托管库。我需要弄清楚如何获得这些。大多数时候,我需要在 Nuget 中找到命名空间。它还向您展示了 native 库,这非常方便。
关于c# - 是否有工具或策略可以找出项目需要引用的所有 .dll 和 nuget 包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63715615/