没有$ expand选项的Breeze ODataException

时间:2014-04-24 11:50:06

标签: c# breeze asp.net-web-api2

我们是两个开发人员(一个使用Windows Server 2008 R2,另一个使用Windows 8),这些开发人员使用相同的项目(在使用Visual Studio 2013的TFS上以及安装了Breeze 1.4.11的最后一个nuget包),但是有不同的关于微风查询执行的结果。

对于Windows Server 2008 R2,我们必须添加$expand选项,否则我们会出错

Only properties specified in $expand can be traversed in $select query options

,与Windows 8相反,查询在没有$expand选项的情况下成功运行,为什么?

使用$expand查询:

/breeze/breeze/Udc_Testata?$filter=Id_Tipo_Udc eq 'A'&$orderby=Id_Udc&$top=100&$expand=FK_Udc_Testata_Tipo_Udc%2CFK_Udc_Posizione_Udc_Testata%2FFK_Udc_Posizione_Partizioni&$select=Codice_Udc%2CFK_Udc_Testata_Tipo_Udc%2FDescrizione%2CFK_Udc_Posizione_Udc_Testata%2FFK_Udc_Posizione_Partizioni%2FDescrizione&$inlinecount=allpages

没有$expand的查询:

/breeze/breeze/Udc_Testata?$filter=Id_Tipo_Udc eq 'A'&$orderby=Id_Udc&$top=100&$select=Codice_Udc%2CFK_Udc_Testata_Tipo_Udc%2FDescrizione%2CFK_Udc_Posizione_Udc_Testata%2FFK_Udc_Posizione_Partizioni%2FDescrizione&$inlinecount=allpages

由于

1 个答案:

答案 0 :(得分:0)

标准OData查询需要$ expand选项。但是,如果您使用BreezeControllerAttribute装饰Breeze ApiController,即使您没有指定$ expand,Breeze也会理解该查询。

因此,听起来Windows Server 2008 R2没有“微风友好”的声音。控制器。