i could not create a view for the query because there are many combinations of parameters.
i write a function that generates a Predicate Recursively
private void GeneratePredicate(PredicateExpression filter, decimal[] dProsesKoduList, int iHizmet)
{
if (iHizmet == dProsesKoduList.Length) return;
string sObjectAlias = "P" + iHizmet.ToString();
decimal dProsesKodu = dProsesKoduList[iHizmet];
PredicateExpression filterHizmetDetay = new PredicateExpression();
filterHizmetDetay.Add(LyIeGerceklesenIslemFields.ProsesKodu == dProsesKodu);
filterHizmetDetay.Add(LyIeGerceklesenIslemFields.IsEmriNo == LyIsEmriParcaFields.IsEmriNo);
filterHizmetDetay.Add(LyIeGerceklesenIslemFields.SiraNo == LyIsEmriParcaFields.SiraNo);
filterHizmetDetay.Add(LyIeGerceklesenIslemFields.ParcaNo == LyIsEmriParcaFields.ParcaNo);
GeneratePredicate(filterHizmetDetay, dProsesKoduList, iHizmet + 1);
filterHizmetDetay.ObjectAlias = sObjectAlias;
RelationCollection relCol = new RelationCollection();
relCol.Add(LyIeGerceklesenIslemEntity.Relations.LyIsEmriParcaEntityUsingIsEmriNoSiraNoParcaNo,
sObjectAlias);
filter.Add(new FieldCompareSetPredicate(
LyIsEmriParcaFields.SeriId, null, LyIsEmriParcaFields.SeriId,
null, SetOperator.Exist, filterHizmetDetay, relCol, sObjectAlias, 0, null, false, null));
}
But it does not the bind the entities that has the same name.
Can you give an example about generating exist predicates on the same entity by alias.
The given examples are very simple and not useful for writing complex queries.