[C#] 在執行期下取得所有用到的套件版號資訊
2023-02-04
最近跟同事在測試一個 .NET Core 3.1 跟 .NET 6 的套件問題
我們再抓到底當時候用哪一個套件所產生的錯誤,因為我們一值 Nuget 換不同版本測試
這時候我們必須要知道到底現在(執行期)用的套件是哪一個版本
所以今天簡單筆記一下,就是在執行期的時候抓取所用的 package 版本
其實很簡單的,我的思路就是因為從 nuget 拉下來的套件,必定跟發佈時候 dll 一定會跟著執行環境被發佈出去
這時候我只要把副檔名 .dll 撈出來,透過 Assembly Load 去取得版本資訊就可以了
Result:
這很簡單就不贅述了,單純筆記
reference:
https://stackoverflow.com/questions/29772065/how-to-check-the-version-of-an-assembly-dll
https://stackoverflow.com/questions/1755504/programmatically-get-the-version-number-of-a-dll