我有這樣的代碼:NHibernate.QueryException消息:重複協會路徑
if (pertinentDataExists) {
List<Entity> operatorList = new List<Operator>();
List<Entity> newOperatorList = criteria.newOperatorList;
foreach (Operator operator in operatorList)
{
operatorList.Add(operator);
}
queryCriteria.CreateCriteria("OperatorList").Add(Restrictions.In("Operator", operatorList));
}
再後來:
if (otherPertinentDataExists) {
Object[] objects = new Object[criteria.newRoleTypeList.Count];
for (int = 0; i < criteria.RoleTypeList.Count; i++) {
objects[i] = criteria.RoleTypeList[i].Id;
}
queryCriteria.CreateCriteria("OperatorList").Add(Restrictions.In("Role", objects));
}
這些工作分開就好了。但是,如果是這兩種情況下有標準添加到列表中的話,那麼我得到:
NHibernate.QueryException消息:重複協會路徑: OperatorList
如何添加限制對於Role
如果條件已經創建?
樣子,你可以檢查它是否已經與'GetCriteriaByPath( 「OperatorList」)存在' – dotjoe