Breeze .expand为导航属性获取null

时间:2013-11-22 16:32:57

标签: breeze expand

   public class Denial
{
    [Key]
    public string DenialCd { get; set; }
    [Required]
    public string DenialDesc { get; set; }

    public ICollection<CaseDenial> CaseDenials { get; set; }
}


public class CaseDenial
{
    [Key]
    public int ID { get; set; }

    [Required]
    public string DenialCd { get; set; }

    [Required]
    public int CaseId { get; set; }

    [ForeignKey("DenialCd")]
    public Denial Denial { get; set; }
    [ForeignKey("CaseId")]
    public Case Case { get; set; }
}

      var query = EntityQuery.from('CaseDenials')
            .where("CaseId", "==", caseID)
            .expand("Denial")
            .orderBy("DenialCd").inlineCount();

CaseDenial表链接到Denial表的DenialCd列。在从CaseDenials获取记录时,上面的breeze查询为导航属性“Denial”带来null。

2 个答案:

答案 0 :(得分:1)

我的猜测是你的EF模型没有被'正确'归因。我确认您可以执行服务器端实体框架'包含'操作。当你打电话给客户方“扩展”时,这就是Breeze所做的事情。

答案 1 :(得分:1)

据我所知,如果您拒绝多次拒绝,则应查询如下:

var query = EntityQuery.from('Denials')
    .where("CaseDenial.CaseId", "==", caseID)
    .expand("CaseDenial")
    .orderBy("DenialCd").inlineCount();

这应该有效。您还可以尝试添加[InverseProperty("CaseDenials")]