2013-08-02 23 views
1

我刚刚从BreezeJS 1.1升级到1.4,但“扩展”似乎不工作?我可以看到我的扩大将服务器:即使从服务器返回数据,BreezeJS导航属性仍未填充

http://localhost:60198/api/Data/App?$filter=Id%20eq%209&$expand=Household%2CHousehold%2FPrimary 

,我可以看到数据回来:

[ 
    { 
    "$id": "1", 
    "$type": "App.Models.Base.App, App", 
    "Id": 9, 
    "Number": "ZZZZ", 
    "Name": "ZZZZZ", 
    "Household": { 
     "$id": "2", 
     "$type": "App.Models.Base.Household, App", 
     "Id": 6, 
     "Primary": { 
     "$id": "3", 
     "$type": "App.Models.Base.Person, App", 
     "Id": 9, 
     "FirstName": "ZZZZ", 
     "MiddleName": "ZZZZ", 
     "LastName": "ZZZ", 
     } 
    }, 
    "HouseholdId": 6 
    } 
] 

,但家庭财产为空时,我尝试访问它。这曾经用于1.1。

breeze.EntityQuery 
    .from("App") 
    .where("id", "==", id) 
    .expand("Household, Household.Primary") 

其中,如果记录为JSON变成

query {"resourceName":"App","entityType":null,"wherePredicate":{"_filterQueryOp":{"_$typeName":"FilterQueryOp","name":"Equals"},"_propertyOrExpr":"id","_value":9,"_valueIsLiteral":false},"orderByClause":null,"selectClause":null,"skipCount":null,"takeCount":null,"expandClause":{"propertyPaths":["Household","Household.Primary"]},"parameters":{},"inlineCountEnabled":false,"entityManager":null} 

更新:我降级到1.2.5,它再次工作。我在代码中四处张望,看起来像这样在这里查看: https://github.com/IdeaBlade/Breeze/blob/master/Breeze.Client/Scripts/breeze.debug.js#L13312 返回false,因此实体未被更新?谁知道我对微风代码库很陌生。

+0

你能发表您的查询吗? –

+0

由于您已经在Breeze代码库中对该行进行了深入研究,您是否有任何想法了解为什么'currentRelatedEntity === relatedEntity'在您的案例中?这就是为什么微风会救市,而不是设置导航属性值。 – Ward

回答

0

导航属性设置不正确。