【发布时间】:2010-10-07 11:47:31
【问题描述】:
我有一个 CreateCriteria,它使用不同的别名向同一个表添加了两次连接:
aCriteria.CreateCriteria("Color", "co").Add(Expression.In("co.ColorId", bikush.Color.Select(x => x.ColorId).ToList()));
aCriteria.CreateCriteria("Color","fco").Add(Expression.In("fco.ColorId",bikush.FCColor.Select(x => x.ColorId).ToList()));
我收到错误“重复关联路径”
这是我要生成的 SQL:
SELECT b.BikushId, c.[Name] AS PlainColor, fc.[Name] AS FancyColor FROM Bikush b INNER JOIN BikushInColor clt ON clt.BikushId = b.BikushId INNER JOIN Color c ON clt.ColorId = c.ColorId INNER JOIN BikushInFCColor bifc ON b.BikushId = bifc.BikushId INNER JOIN Color fc ON bifc.ColorId =fc.ColorId
有没有使用 Nhibernate 的 CriteriaApi 解决这个问题?
谢谢
【问题讨论】:
标签: .net nhibernate criteria