如何确定我的.NET Core应用运行在哪个操作系统上?
过去我可以使用Environment.OSVersion

确定我的应用是在Mac还是Windows上运行的当前方法是什么?

最佳答案

方法

System.Runtime.InteropServices.RuntimeInformation.IsOSPlatform()

可能的论点
OSPlatform.Windows
OSPlatform.OSX
OSPlatform.Linux


bool isWindows = System.Runtime.InteropServices.RuntimeInformation
                                               .IsOSPlatform(OSPlatform.Windows);

更新资料

感谢Oleksii Vynnychenko的评论

您可以使用以下命令将操作系统名称和版本作为字符串获取
var osNameAndVersion = System.Runtime.InteropServices.RuntimeInformation.OSDescription;

例如。 osNameAndVersion将是Microsoft Windows 10.0.10586

10-08 14:06