找出正在运行MVC应用程序的ASP.NET版本

问题描述

我们有以下MVC项目,其构建设置如下。

应用程序构建设置

enter image description here

在索引页面上有语句

@ Html.Raw(“版本:” + System.Environment.Version.ToString());显示正在运行的ASP.NET版本。

当应用程序通过Visual Studio运行时,它将显示

enter image description here

我的问题是为什么它将4.0显示在应为4.7.2的位置,就像应用程序对我使用的是ASP.NET 4.0。

很高兴有人可以解释为什么我们在这里显示不同的运行时。

如果版本是正确的4.0,我们应该怎么做才能使IIS Express使用4.7.2

解决方法

据我所知,IIS应用程序池是使用CLR版本而不是.Netframework版本。

CLR由其自己的版本号标识。 .NET Framework版本号在每个发行版中都会增加,但CLR版本并不总是会增加。

例如,.NET Framework 4、4.5和更高版本包括CLR 4

更多详细信息,您可以参考此article