尽管从服务器返回了数据,但BreezeJS导航属性未被填充
本文关键字:导航 BreezeJS 属性 填充 服务器 返回 数据 | 更新日期: 2023-09-27 18:25:49
我刚刚从BreezeJS 1.1升级到1.4,但"扩展"似乎不起作用?我可以看到我的扩展到服务器:
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#L13312return为false,因此没有更新实体?谁知道我对微风密码库还很陌生。
导航属性设置不正确。