请看清楚:ASP.NET 2.0.50727.5459 和 .Net Framework 4.0/3.0
看到了,asp.net2.0不是.net framework2.0中的吗,
@北在北方: 请把你的 IIS 中安装的 ISAPI 扩展列表截图出来。
@Launcher:
@北在北方: 看到 ASP.NET v4.0.30319 了吗?把这两条都删除,然后浏览你的网页。
@Launcher: 为什么要删了?
@北在北方: 为了回答你的问题:项目时4.0写的,配置上是2.0,为什么能运行?
@Launcher: 我问的是它为什么"能"运行,而不是为什么"不能"运行
@北在北方: 因为你添加了 ASP.NET v4.0.30391 的处理程序,当然这可能还不能解决你的疑问,因为还差一条 CLR 的基本概念没给你解释,就是 CLR 的加载规则,因为你的程序集是 .Net 4.0 的,那么它会自动加载 .Net 4.0 的程序集。如果你的基本功扎实的话,其实都不用我给你解释后面这一条规则。
@Launcher: 那既然能自动匹配,拿在IIS的应用程序池中做的.net framework版本的配置是不是就没什么作用了?
@北在北方: 你这个问题问的很好,你可以测试下。同时,IIS 的“管理服务器”功能中还有个“更改 .NET Framework 版本”功能,你都可以测试下。
我觉得是编译成二进制了吧
可能是你项目中没有用到3.5或者4.0的新特性,你所用的的2.0中也有,所以在2.0中也能正常运行,拙见!^_^