這不是一個什麼 .NET 的新特點了…只是一個犯蠢的紀錄。

只是近期常常發生這種犯蠢的事情,所以來我獨自筆記一下。
事情是這樣的,有一天發現電腦的工作環境居然透過 "dotnet --version" 回答的不是已知所安裝的最新版 dotnet 版本。
dotnet --version
這是期待應該要有的回答:

但卻得到這樣的回答:

不知覺得很奇怪,明明在電腦上安裝的 dotnet 查看 sdk 在環境上是長這樣的:
dotnet --list-sdks
而 dotnet 查看 runtime 的在環境上是長這樣的:
dotnet --list-runtimes
而透過 dotnet 查看相關 info 也有正確的回應:
dotnet --info
但為什麼現在透過 dotnet 查找 version ,卻回應正在使用的是 6.0.428 的版本!?
WTF?
後來想到 .NET Core 3.1 後開始在 .NET 當中有的 global.json 設計:
https://learn.microsoft.com/zh-tw/dotnet/core/tools/global-json
文章開頭一開始的想法是源自於文件當中的標號 1 的那句話:

但現在應該是遇到了標號 2 的那句話。
再繼續透過 dir 指令配合查找確認了一下此資料夾,居然真的有 global.json 這個檔案。
dir | findstr global
該檔案打開一看還真的有正確的 global.json 描述:

把該檔案刪除後:
del global.json
再透過 "dotnet --version" 查看,即有正確的 "8.0.407" 回應:

嘖嘖,就怪自己犯蠢了🙃🙃🙃
I'm a Microsoft MVP - Developer Technologies (From 2015 ~).

I focus on the following topics: Xamarin Technology, Azure, Mobile DevOps, and Microsoft EM+S.
If you want to know more about them, welcome to my website:
https://jamestsai.tw
本部落格文章之圖片相關後製處理皆透過 Techsmith 公司 所贊助其授權使用之 "Snagit" 與 "Snagit Editor" 軟體製作。