Asp.Net MVC3升级到MVC4工具?

26
我知道手动升级从3到4的指南,像这样的: http://www.dotnetexpertguide.com/2011/12/upgrade-aspnet-mvc-3-project-to-mvc-4.html 这些指南在细节上不尽相同,这明显表明存在风险。有没有一种工具可以处理从MVC3项目到MVC4的过渡?这将隐含地意味着从.Net 4迁移到.Net 4.5,这对于Microsoft在这两个版本之间添加的所有命名空间重定向来说确实具有一些重大影响。
我也知道一些手动指南,基本上是放弃升级,而是创建一个新项目,并逐个将内容移植到新项目中。这会产生很多明显的机会,可能会导致小错误引发大问题。
因此,一个经过测试的工具,我可以依赖它不会出现像我可能犯的愚蠢错误,真的会在这里帮助。它是否存在?有一个工具可以从MVC2转换到3,所以没有找到一个从3到4的工具让我感到惊讶。
为什么我想升级的背景:我们有几个运行在.Net 4.5 MVC4上的新项目,以及一个重要的旧项目在.Net 4 MVC3上(其中有一些.Net 2和MVC 2混合...),随着我们共享库的不断前进,那个旧项目越来越困难。我们可以冻结共享库上的最后一个工作版本,或者分叉它们并维护两个版本...显然这两种方法都不是很吸引人。我更愿意只更新旧项目上的工具集,并将所有内容带入平等状态。

3
迁移4.0/MVC 3到4.5/MVC 4后,需要检查我的撰写是否正确,但没有特定的工具可用。这篇文章提供了一个迁移ASP.NET MVC解决方案到.NET 4.5和ASP.NET MVC 4的指南。-http://ivanz.com/2012/08/20/guide-for-migrating-an-asp-net-mvc-solution-to-net-4-5-and-asp-net-mvc-4/ - Ivan Zlatev
谢谢,这个方法起作用了。为了澄清一下,我不得不更改所有项目的目标框架为.Net 4.5,然后卸载Entity Framework,再重新安装它,最后按照我包含的链接描述升级MVC 3到4。这个方法真的起作用了。最后:JSON序列化POST中的字典。 - Chris Moschini
报告了这个错误 - https://github.com/NandipMakwana/UpgradeMvc3ToMvc4/issues/1 - Chris Moschini
1个回答

37

很酷 - 这是你写的吗?它做了一些奇怪的事情 - 例如在Web.Config中将controlRenderingCompatibilityVersion="4.0"添加到页面标记中,这似乎是不必要的,并且可能会在未来成为问题。但是它确实起作用,并且节省了我大量的时间 - 谢谢。 - Chris Moschini
@ChrisMoschini - 不,我不是作者,但我很高兴你觉得它有用! - joerage
@ChrisMoschini ASP.NET MVC 4项目不需要更新项目GUID才能被IDE识别为MVC 4项目(而不是MVC 3),以便用于模板(文件/项)和其他目的吗?将 {E53F8FEA-EAE0-44A6-8774-FFD645390401} 更改为 {E3E379DF-F4C6-4180-9B81-6769533ABE47} - Ivan Zlatev
@IvanZlatev 很敏锐!它确实没有这样做,这确实是这个NuGet包的一个错误 - 我使用这个工具升级的MVC3项目仍然希望添加MVC3布局,而不是MVC4布局(尽管区别非常小)。 - Chris Moschini
@IvanZlatev和ChrisMoschini:对我来说它运作正常。我认为在帖子中提到了类似的东西。请看一下。 “由于我们将项目类型从MVC 3更改为MVC 4,Visual Studio会要求重新加载项目。”我认为这仅涉及项目GUID。 - mcacorner
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接