在MVC中将VS2013迁移到VS2015后出现问题

时间:2015-08-04 14:08:43

标签: asp.net-mvc visual-studio-2013 visual-studio-2015

更新的问题

我有一个项目,我已经在VS 2013中开始,并设置如下:

MyMainMvcApp (Containing core Functionality)
MyPlugin (Containing plugable customer stuff)

MyPlugin包含一些* .cshtml视图作为嵌入式资源和一些控制器。

在VS2013中,我可以打开视图,我有完整的Razor Intellisense,在编译时没有问题。

在V2015中,错误列表显示了很多错误,例如

Feature 'lambda expression' is not available in C# 2.  Please use language version 3 or greater.
The type or namespace name 'Mvc' does not exist in the namespace 'System.Web' (are you missing an assembly reference?)

等等

当然我引用了所有的Assemblies。 项目甚至可以编译。

我相信VS 2015只是缺少web.config或类似的配置内容,因此他可以在设计器中打开视图时解决这些问题。

我在MyPlugin项目中有一个已从Nuget添加的app.config。 我在那里放了与我的web.config相同的配置内容,但这没有帮助。

我还将MyMainMvcApp \ Views \ web.config复制到MyPlugin \ Views \ web.config中,但也无法正常工作。

知道问题可能是什么或想法如何解决它?

2 个答案:

答案 0 :(得分:2)

我已经在VS 2013中启动了MyPlugin作为类库,并且运行良好。之后我无法在VS 2015设计师中按照需要使MyPlugin工作。我已经创建了一个新的MyPlugin项目作为MVC项目,并将我的所有代码从旧库复制到新的。

这是一种解决方法,但它解决了我的VS 2015问题。

答案 1 :(得分:0)

它试图利用C#2的事实非常令人担忧。确保您的项目针对您认为最适合的.NET版本。既然您正在使用VS2015,如果您愿意,可以一直使用4.6,或者如果您想要更强硬的东西,请坚持使用4.5.2。只需在解决方案资源管理器中右键单击您的项目,然后选择"属性"。然后在第一个"应用程序"选项卡,更改"目标框架"下拉到适当的东西。