我升级到VS2015,MVC更新到5.0。
我能够在我的本地PC上成功构建,但是当我签入Visual Studio Online并且我的CI构建构建时,它失败了:
"类型或命名空间名称' Mvc'名称空间中不存在System.Web' (你错过了一个程序集引用吗?)"
我已经使用nuget manager删除,并在我的项目上重新安装MVC - 结果相同。
查看我在项目中的引用,看起来都很好。
我还会在错误发生之前在日志中注意到:
Installing 'Microsoft.AspNet.Razor 3.2.3'.
Installing 'Microsoft.AspNet.Mvc.FixedDisplayModes 5.0.0'.
Successfully installed 'Microsoft.AspNet.Mvc.FixedDisplayModes 5.0.0'.
Successfully installed 'Microsoft.AspNet.Razor 3.2.3'.
All packages listed in packages.config are already installed.
但它似乎在构建时,它并不知道MVC是什么。我该如何解决这个问题?
答案 0 :(得分:0)
检查所有web.config文件中提到的版本号。我的意思是视图文件夹中的那些;他们匹配版本5.2.3.0
答案 1 :(得分:0)
扫描所有引用并确保所有与MVC相关的引用都具有Copy Local
属性集true
。不仅是Mvc one。
答案 2 :(得分:0)
我通过删除Packages文件夹中的所有文件夹来修复此问题,只保留repositories.config。这迫使VSOnline恢复每个构建的所有包。
答案 3 :(得分:0)
这里游戏的后期,但我遇到了一个非常类似的问题:错误CS0246:找不到类型或命名空间名称'blank'(你是否缺少using指令或程序集引用?)。
这是在本地建设,但不是在VSTS。我的解决方案是删除项目引用下的引用,然后再将其重新添加。引用是针对解决方案的本地项目中的命名空间。出于某种原因,它在本地被发现但在登记并在VSTS上构建时未找到。
删除引用然后重新添加它对我有用。