在进一步调查后,这个问题已被完全编辑,以实际概述根本问题。
我的客户端元数据上没有出现导航属性时遇到问题。通过对微风客户端代码的深入检查,我发现parseCsdlNavProperty
(第 6181 行)中的以下代码导致我的所有集合导航属性都被忽略:
var constraint = association.referentialConstraint;
if (!constraint) {
// TODO: Revisit this later - right now we just ignore many-many and assocs with missing constraints.
return;
// Think about adding this back later.
//if (association.end[0].multiplicity == "*" && association.end[1].multiplicity == "*") {
// // many to many relation
// ???
//} else {
// throw new Error("Foreign Key Associations must be turned on for this model");
//}
}
属性 referentialConstraint 是未定义的,这会导致微风忽略我的相关实体。问题是我不确定a)为什么这是空的,b)这是做什么的,c)为什么微风似乎讨厌这个,当实体框架似乎可以很好地映射事物时,d)如何修复它。
所以我删除了我的整个元数据和模型示例,因为它信息太多。如果需要信息,请告诉我,我会添加。
希望这使问题更具体,更容易破译。
谢谢。