当前的 Windows技术预览版(Build 9860)似乎破坏了.NET版本信息。此外,这种行为似乎也适用于Visual Studio 2015 / .NET 4.6 Preview。
到目前为止,我能够使用System.Environment.Version来获取检查某些前提条件所需的CLR构建版本(例如,如果在过时的环境中执行软件时存在已知问题,请确保存在某个KB更新)。鉴于.NET 4.5是.NET 4.0的替代品,所有版本都以4.0.30319
开头,并以修订字段中的实际版本结束。从最新的Windows预览开始,此信息似乎是错误的,不一致的或至少是意外的。该属性现在返回4.0.30319.0
,这在版本排序方面是一个重要的退步。作为比较,我更新的Windows 8.1版本反映了4.0.30319.34014
。
The documentation for .NET 4.5表示可以使用Environment.Version或程序化注册表访问来确定已安装的.NET版本。
注册表检查产生的381023
版本密钥高于379893
,表明至少存在.NET 4.5.2。
是否有任何其他信息可以表明这是否是最新预览中的错误,或者是否不再以这种方式使用System.Environment?