操作系统版本 和 Framework 版本息息相关,具体关系可以参考:.NET Framework 版本和依赖关系
net framework 版本是向后兼容的,意味着不需要特定安装老的版本的net framework. 正常情况也无法安装,因为已经有高版本存在。
关于如何查看机器中已经安装的net framework 版本可以参考链接:How to: Determine which .NET Framework versions are installed
为了解决应用程序的版本兼容性,可以设定运行时版本,让程序在指定的Target framework 下运行。
运行时版本 修改方法:在visual studio project 右键属性,修改 target framework 为指定版本
注意:手动修改web.config 中的 TargetFramework 存在失败的可能,建议使用vs 修改
通过dump 是无法查看具体运行时版本的,只能看到使用的 CLR 版本
运行时版本查看方法: 使用procdump 收集对应应用程序的dump , !mex.writemodule -a -p 反编译后, 使用ILSpy查看对应应用的TargetFramework 属性值,如下图可以看到,两次运行时版本分别为 4.8 和4.7.2