一.前言
.NET Core 是一個(gè)通用開發(fā)平臺,由 Microsoft 和 GitHub 上的 .NET 社區(qū)共同維護(hù)。 它是跨平臺的,支持 Windows、macOS 和 Linux,并且可用于設(shè)備、云和嵌入式/IoT 方案。
以下特征對 .NET Core 進(jìn)行了最好的定義:
- 部署靈活:可以包含在應(yīng)用或已安裝的并行用戶或計(jì)算機(jī)范圍中。
- 跨平臺:可以在 Windows、macOS 和 Linux 上運(yùn)行;也可移植到其他操作系統(tǒng)。 Microsoft、其他公司和個(gè)人提供的支持的操作系統(tǒng) (OS)、CPU 和應(yīng)用程序方案會(huì)隨著時(shí)間推移而增多。
- 命令行工具:可在命令行中執(zhí)行所有產(chǎn)品方案。
- 兼容性: .NET Core 通過 .NET 標(biāo)準(zhǔn)庫與 .NET Framework、Xamarin 和 Mono 兼容。
- 開放源:.NET Core 是一個(gè)開放源平臺,使用 MIT 和 Apache 2 許可證。 文檔由 CC-BY 許可發(fā)行。 .NET Core 是一個(gè) .NET Foundation 項(xiàng)目。
- 由 Microsoft 支持:.NET Core 由 Microsoft 依據(jù) .NET Core 支持提供支持
.NET Core 內(nèi)置了一些API供我們獲取操作系統(tǒng)、運(yùn)行時(shí)、框架等信息。這些API不是很常用,所有有些小伙伴可能還不知道,這里做一些可能用到的獲取操作系統(tǒng)的API介紹
二.判斷操作系統(tǒng)
判斷操作系統(tǒng)是否為 Linux OSX Windows,主要使用 System.Runtime.InteropServices.IsOSPlatform()
這個(gè)方法,使用如下:
1
2
3
4
|
Console.WriteLine( "判斷是否為Windows Linux OSX" ); Console.WriteLine($ "Linux:{RuntimeInformation.IsOSPlatform(OSPlatform.Linux)}" ); Console.WriteLine($ "OSX:{RuntimeInformation.IsOSPlatform(OSPlatform.OSX)}" ); Console.WriteLine($ "Windows:{RuntimeInformation.IsOSPlatform(OSPlatform.Windows)}" ); |
執(zhí)行結(jié)果:
三.獲取操作系統(tǒng)架構(gòu)、名稱
1
2
3
4
|
Console.WriteLine($ "系統(tǒng)架構(gòu):{RuntimeInformation.OSArchitecture}" ); Console.WriteLine($ "系統(tǒng)名稱:{RuntimeInformation.OSDescription}" ); Console.WriteLine($ "進(jìn)程架構(gòu):{RuntimeInformation.ProcessArchitecture}" ); Console.WriteLine($ "是否64位操作系統(tǒng):{Environment.Is64BitOperatingSystem}" ); |
執(zhí)行結(jié)果:
四.寫在最后
獲取這些信息的類主要都在 System.Runtime.InteropServices名稱空間下。相關(guān)類名都帶 Runtime 或者 Environment,如果還有其他需求,請大家去這里查找。
好了,以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對服務(wù)器之家的支持。
原文鏈接:http://www.cnblogs.com/stulzq/