DetachedCriteria / ICriteria对连接深度有任何限制吗?

时间:2010-11-28 13:32:04

标签: nhibernate criteria icriteria nhibernate-criteria

想象一下,我有C1C2C3个类。假设我们可以string dummy = c1.ContainerC2.ContainerC3.Prop1。是否有任何限制不允许我直接从C3创建别名而不在标准中包含其他类?例如:

DetachedCriteria criteria = DetachedCriteria.For<T>("root");
criteria.CreateAlias("ContainerC2.ContainerC3", "alias_abcdef");

我遇到了问题。它生成具有以下错误消息的SQL查询:

无法绑定多部分标识符“alias_cont1_.HotelName”。

1 个答案:

答案 0 :(得分:1)

您无法使用CriteriaAPI直接转到ContainerC2。相反,你应该做下面的事情:

DetachedCriteria criteria = DetachedCriteria.For<T>("root");
criteria.CreateCreteria("ContainerC2")
        .CreateAlias("ContainderC3", "alias_abcdef");