编译ASP.NET项目与安装NET4.5的NET4.0

编译ASP.NET项目与安装NET4.5的NET4.0,asp.net,.net-4.0,.net-4.5,Asp.net,.net 4.0,.net 4.5,我有一个ASP.NET项目,正在使用Visual Studio 2010和NET4.0正确编译 然后我安装了VS Express 2012和NET4.5,我在尝试打开SqlConnection时总是遇到异常 我是否有机会重新编译针对NET4.0的项目(这样就不会取消安装4.5)并使其正常工作? 在VS Express 2012中,我有以下web.config: <system.web> <compilation debug="true" targetFramework="4.0

我有一个ASP.NET项目,正在使用Visual Studio 2010和NET4.0正确编译

然后我安装了VS Express 2012和NET4.5,我在尝试打开SqlConnection时总是遇到异常

我是否有机会重新编译针对NET4.0的项目(这样就不会取消安装4.5)并使其正常工作?

在VS Express 2012中,我有以下web.config:

<system.web>
<compilation debug="true" targetFramework="4.0"/>
编辑2 正如这个博客和这个答案所解释的那样,引用的程序集(文件夹包含x.xx框架附带的那些程序集,这些程序集在设计和构建新组件时非常有用)和运行时场景之间有很大的区别(在运行时,在大多数情况下,这些组件仍将从GAC加载)

然而,当我运行这个项目时,我总是得到一个异常,好像这个项目实际上使用的是NET4.5…为什么

另外,如果我在仅安装NET4.0的生产服务器机器上部署此项目,则连接正常。 (这一点现在很清楚:安装Net4.5基本上取代了Net4.0)

更新的问题- 我是否有机会重新编译我的项目,目标是旧的NET4.0.dll(在我的例子中是System.Data.dll),而不是新的NET4.5 dll?


编辑-其他信息

在这个MSDN链接中,我发现:

如果确定.NET Framework 4.5中的更改已损坏应用程序,请检查运行时设置架构,以确定是否可以在应用程序配置文件中使用运行时设置来恢复以前的行为


这能帮助我吗?以及如何解决?

什么是“异常”?尝试解决问题,从您拥有4.5的那一刻起,不要再回头,忘记4.0,它已经不存在了。异常是SqlException:与服务器成功建立了连接,但在预登录握手期间发生了错误。(提供程序:TCP提供程序,错误:0-远程主机强制关闭了一个现有连接。)@Aristos我已经为它发布了另一个线程
Assembly System.Data
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Data.dll