您的位置:首页 > 其它

如何将vs2012开发的基于.net framework 4.5框架的MVC4项目部署到windows server2003服务器上

2014-10-09 17:51 721 查看
最近使用vs2012开发的一个项目,准备部署到一台windows server 2003的服务器上的时候,却出了问题,花了两天左右才得以解决,其实原因很简单,.Net Framework的版本过高,windows server 2003不支持。

如果是vs2012开发的基于.net framework 4.5框架的MVC项目,想要部署到windows server 2003,IIS6, .net framework 4.0的服务器上,需要做以下工作:

1、调整项目的框架:右键工程文件夹,选择属性

2、修改框架版本为.NET Framework 4.0,同理修改Domain的框架版本。

3、找到工程名文件夹下的引用,删除对Entity Framework.dll的引用,同理删除Domain文件夹下对Entity Framework.dll的引用(因为虽然框架的版本从4.5改为了4.0,但是EF在引用时的EntityFramework.dll是针对4.5版本的,原因就是C:\Program Files\Microsoft Web Tools\Packages\EntityFramework.5.0.0\lib ,里面有net40和net45两个版本,系统会默认选择net45引用(我的VS2012安装在C盘,因此EntityFramework.dll的地方在以上目录),因此我们只要引用正确的dll即可。)

4、下面我们重新添加工程文件夹下的Entity Framework.dll引用。

(1)右键选择添加引用

(2)在新打开的界面中点击【浏览】,找到刚刚的目录C:\Program Files\Microsoft Web Tools\Packages\EntityFramework.5.0.0\lib,将net40文件夹中的EntityFramework.dll添加引用。同理可以修改Domain文件夹中对EntityFramework.dll的引用。

(3)找到工程文件夹目录下的Web.config文件和Domain文件夹下的App.config文件,将其中的

<configSections>
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
  </configSections>


改为
<configSections>
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=4.4.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
  </configSections>



5.大功告成,重新生成一下,并发布出来,就可以到windows server 2003上顺畅的部署项目了!

转载请注明文章出处。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐