我试图使用ODataAngularResources。我阅读了文档并按照它显示的方式here完成了。以下是我如何使用它。
$scope.claims = $odataresource("/odata/DeniedClaims")
.odata().withInlineCount().take(20).query();
Chrome开发中的Network
显示数据,但我仍然收到以下错误:
Error: [$resource:badcfg] http://errors.angularjs.org/1.4.5/$resource/badcfg?p0=Error%20in%20resource…4=GET&p5=%2Fodata%2FDeniedClaims%3F%24top%3D20%26%24inlinecount%3Dallpages
为什么我收到此错误,如何解决此问题?数据作为JSON从服务器发送。当我在浏览器中输入http://localhost/odata/DeniedClaims
时,我将所有数据都作为json数组获取。
答案 0 :(得分:0)
我必须在.Net中使用旧版本的OData。我卸载并重新安装了OData,并将引用设置为using System.Web.OData
而不是using System.Web.Http.OData
。我还将路由配置从config.Routes.MapODataRoute("odata", "odata", GetEdmModel())
更改为config.MapODataServiceRoute("odata","odata",GetEdmModel())
。然后,我只需要从AngularJS控制器中删除withInlineCount()
。这对我有用。我还不确定为什么前一个会导致$resource
错误。