ASP.NET下实际使用的是啥版本的.NET框架
Posted
技术标签:
【中文标题】ASP.NET下实际使用的是啥版本的.NET框架【英文标题】:What version of .NET framework is actually used under ASP.NETASP.NET下实际使用的是什么版本的.NET框架 【发布时间】:2020-08-14 02:30:42 【问题描述】:假设我的应用程序池设置为“4.0.30319”。在 Visual Studio 中,我的项目设置为“.NET Framework 4.6.2”。
在我的web.config中,有一行:
<httpRuntime targetFramework="4.5" maxRequestLength="30720" executionTimeout="36000"/>
而4.8实际上是安装在运行ISS的服务器上。
现在假设在 4.7 中发布的行为发生了变化。我会在我的应用程序中看到新的行为吗?
【问题讨论】:
您在服务器上安装的最终运行时为 4.8,因此所有行为都应与 4.8 匹配。所有其他设置仅限制编译器使用较新的配置文件blog.lextudio.com/… 请忽略您的应用程序池设置,因为 IIS 应该改为“CLR 版本”。 【参考方案1】:根据docs:
如果计算机上存在用于构建应用程序的 .NET Framework 版本,则应用程序在该版本上运行。
如果构建应用程序所依据的 .NET Framework 版本不存在,并且配置文件未在元素中指定版本,则应用程序将在当前存在的最新版本的 .NET Framework 上运行电脑。
如果构建应用程序的 .NET Framework 版本不存在,并且配置文件在元素中指定了版本,则应用程序在应用程序配置文件中指定的最新版本上运行,并且存在于电脑。
所以我会说 4.8,您始终可以使用以下方式以编程方式检查它:
Environment.Version
另外看看这个question。
【讨论】:
Environment.Version 不会直接告诉您使用的是哪个版本的 .NET Framework。它告诉您使用的是哪个版本的 CLR。要获取基于 Environment.Version 的 .NET Framework 版本,请阅读:***.com/questions/12971881/…以上是关于ASP.NET下实际使用的是啥版本的.NET框架的主要内容,如果未能解决你的问题,请参考以下文章