元数据的Breeze JSON解析错误

时间:2013-04-02 19:16:34

标签: asp.net-web-api breeze durandal hottowel

我刚刚将我的Breeze nuget包从1.1.3升级到1.2.7。我收到了一些有“ComplexType”项的类的错误,因此在升级后,我从MVC4 Web API读取元数据时收到以下错误。除了ComplexType之外,一切都在此之前正常工作,因此我确信一切都已到位,因为我获得了元数据,并且能够在屏幕上显示数据。

Uncaught SyntaxError: Unexpected token o 

Uncaught SyntaxError: Unexpected token o breeze.debug.js:12561
ctor.fetchMetadata.ajaxImpl.ajax.success breeze.debug.js:12561
jQuery.Callbacks.fire jquery-1.9.1.js:1037
jQuery.Callbacks.self.fireWith jquery-1.9.1.js:1148
done jquery-1.9.1.js:8074
jQuery.ajaxTransport.send.callback

1 个答案:

答案 0 :(得分:0)

我遇到了完全相同的问题,我注意到当您针对元数据位置(/ api / Context / Metadata)发出GET时,它返回了格式为json的xml文档。我也认为有一个相关的question,但在一个稍微不同的背景下。但是,在这种情况下,错误是在包含ctor.prototype.fetchMetadata的行中的JSON.parse()处引发的。但我很确定这是完全相同的根本原因。

只需从Nuget更新Breeze(dll和js文件),这样就可以了。 请注意,您可能必须手动删除/Scripts文件夹中的breeze文件。