问题描述
在看别人的项目是发现每个action方法前都加了route标签,用来制定路由。如图但是自己建一个webapi项目的时候就没有这个属性,与添加命名空间无关。
解决方案
解决方案二:
换了个高版本的web.Httpdll出现错误错误4程序集“System.Web.Http,Version=5.2.2.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”所使用的“System.Net.Http.Formatting,Version=5.2.2.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”版本高于所引用的程序集“System.Net.Http.Formatting,Version=4.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”的版本d:VisualStudio2013ProjectsMyWebApiTestSystem.Web.Http.dllMyWebApiTest
解决方案三:
比较下两者的命名空间,还有确认是webapi还是mvc,看下controller继承的是哪个
解决方案四:
貌似5.0的System.Net.Http里面是有RouteAttribute的,但是在nuget里面不知道怎么将4.0的换成5.0的。直接引用dll报冲突。。等大神解答
解决方案五:
MVC5里面才有RouteAttribute打开http://www.nuget.org/,然后搜索ASP.NETMVC,在搜索结果选择第一个,然后一步步选下去,最后在你的应用里用下面的指令让VS去下载替换就可以了
解决方案六:
Nuget>>>Microsoft.AspNet.WebApi.Core