第1步、MVC2 => MVC3

手动处理可以参考这个:
http://www.asp.net/whitepapers/mvc3-release-notes#upgrading

使用工具 ASP.NET MVC 3 Application Upgrader
http://aspnet.codeplex.com/releases/view/59008
这个工具要求VS2010的项目,sln文件头为:
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
如果不是VS2010的项目,修改一下项目sln文件即可,注意保存的时候文件格式为“UTF8+签名”的形式。

第2步、MVC3 => MVC4

手动处理可以参考这个:
http://www.asp.net/whitepapers/mvc4-release-notes#_Toc303253806

使用工具 Auto Upgrade MVC 3 To MVC 4
https://www.nuget.org/packages/UpgradeMvc3ToMvc4
直接在NU控制台 Install-Package UpgradeMvc3ToMvc4
这个工具还提供源码:
https://github.com/NandipMakwana/UpgradeMvc3ToMvc4

第3步、ASPX => Razor

这个可能必须要手动处理了,工具处理的结果不太完美,需要手动再处理一下。

工具 MVC ASPX to Razor View Converter
http://razorconverter.codeplex.com/
遇到两个情况的乱码,一是文件编码不是UTF8,二是meta设置的charset的是gbk。

其它参考:
http://markcoleman.tumblr.com/post/7886399187/step-by-step-on-how-to-upgrade-mvc2-to-mvc3-with-razor
这篇文章中提到了 https://github.com/telerik/razor-converter 这个小工具,时间有限就没再测试。

另外特别说明一下:
VS2010 的 MVC3 Razor 项目(ASPX的正常),直接用 VS2013 打开或升级到 VS2013,都不能识别 MVC 模式,找不到 ViewBag,也不能添加 View/Controller,而且 Views 下的 Web.config 中配置的一些 namespace 也找不到,必须升级成 MVC4 才正常。

转换后的很多cshtml文件编码被改成了UTF-8,要用“UTF-8 + BOM”重新保存一下才行,不然程序运行会出错,并显示乱码。

VS2008/MVC2 项目迁移到 VS2013/MVC4的更多相关文章

  1. 如何将Eclipse中的项目迁移到Android Studio 中

    如何将Eclipse中的项目迁移到Android Studio 中 如果你之前有用Eclipse做过安卓开发,现在想要把Eclipse中的项目导入到Android Studio的环境中,那么首先要做的 ...

  2. .NET 4.5+项目迁移.NET Core的问题记录

    .NET 4.5+项目迁移.NET Core的问题记录 这几天试着把目前的开发框架迁移到新的.net core平台,中间遇到的问题在这里简单记录一下. 迁移过程遇到的最大的问题IOC容器.我目前使用的 ...

  3. eclipse项目迁移到android studio(图文最新版)

    前言 最近Android studio(下文简称AS)官方发布了正式版,目前火得不行.个人认为主要是因为android是google自家的产品,AS也是他自己搞的IDE,以后的趋势android开发肯 ...

  4. NodeJS项目迁移兼Ubuntu下NodeJS环境部署

    前言 之前做的几个项目都托管在阿里云服务器,但是最近要到期了.想着到底要不要续期,毕竟100/月.后面看着阿里云有个活动,800/三年.果断买下.环境部署折腾了一天,其中也遇到几个坑. 目录 一.安装 ...

  5. Android官方技术文档翻译——IntelliJ 项目迁移

    本文译自Android官方技术文档<Migrating from IntelliJ Projects>,原文地址:http://tools.android.com/tech-docs/ne ...

  6. Android官方技术文档翻译——Eclilpse项目迁移

    本文译自Android官方技术文档<Migrating From Eclipse Projects>,原文地址:http://tools.android.com/tech-docs/new ...

  7. 微服务开发有道之把项目迁移到Kubernetes上的5个小技巧

    我们将在本文中提供5个诀窍帮你将项目迁移到Kubernetes上,这些诀窍来源于过去12个月中OpenFaas社区的经验.下文的内容与Kubernetes 1.8兼容,并且已经应用于OpenFaaS ...

  8. Git SVN Clone 旧项目迁移到 Git 上

    Git SVN Clone 旧项目迁移到 Git 上 很久使用的是 SVN,但由于项目重启,想改为 Git. 之前的 SVN 仓库是本地,所以在 git svn clone 一直不成功. 正确的方式: ...

  9. 老项目迁移到springboot之后,上线服务器出现404的解决方法

    原因是老项目迁移到springboot之后,已经不再使用web.xml的配置了,但是WEB-INF目录下还有web.xml,所以才导致的404,所以只需要在源码处删除整个WEB-INF重新build即 ...

随机推荐

  1. 代码中设置excel自定义格式为[红色]的处理方法

    有时候,excel的自定义格式设置时 ,会遇到需要设置为¥#,##0;[红色]¥-#,##0的格式. 其中会带一个颜色标记,但是如果这样的一句代码,放在英文版的Office里面,就失效了,因为英文版应 ...

  2. PetaPoco T4模板修改生成实体

    PetaPoco T4 模板生成的实体类全部包含再一个.CS文件中.通过修改PetaPoco的T4模板,生成单文件实体. 1.生成单CS文件模板: SigleFile.ttinclude <#@ ...

  3. 免费的天气Web Service接口

    免费的天气Web Service接口 在android应用当中很多时候需要获取天气的信息,这里提供怎么获取天气信息: 1. http://www.ayandy.com/Service.asmx?wsd ...

  4. C++ Vector 使用心得 [转]

    标准库Vector类型 使用需要的头文件:#include <vector>Vector:Vector 是一个类模板.不是一种数据类型. Vector<int>是一种数据类型. ...

  5. java/android线程池详解

    一,简述线程池: 线程池是如何工作的:一系列任务出现后,根据自己的线程池安排任务进行. 如图: 线程池的好处: 重用线程池中的线程,避免因为线程的创建和销毁所带来的性能开销. 能有效控制线程池的最大并 ...

  6. c++中获取代码运行时间

    include<ctime> time_t begin,end;   begin=clock(); { .............//被测试的代码 } end=clock();  cout ...

  7. JSP+Servlet+JavaBean

    MVC是三个单词的缩写:M,Model(模型):V,View( 视图 ),C,Control(控制). MVC模式的目的就是实现Web系统的职能分工, Model层:实现系统的业务逻辑,即javaBe ...

  8. 在C#中使用全局鼠标、键盘Hook

    今天,有个同事问我,怎样在C#中使用全局钩子?以前写的全局钩子都是用unmanaged C或C++写个DLL来实现,可大家都知道,C#是基于.Net Framework的,是managed,怎么实现全 ...

  9. CloudStack的VO在调用setRemoved方法抛异常的原因

    今天在开发中发现一个问题,本来想对一个VO对象的removed值赋值,然后去update一下这条记录,一个最简单的set方法,但是在调用时直接抛异常了. 1: public void setRemov ...

  10. 将表中数据生成SQL语句

    在开发过程中,经常需要我们对表中的数据进行转移,如果在同台机器,可以使用SQL自带的导入数据,但是如果想让所有的数据生成可执行的SQL语句,它的移植性最强了.首先要设计一个存储过程.具体如下: CRE ...