The member predicate system doesn't support custom members. Here is what I have done to support custom properties that return an entity or a collection of entities. Basically alter a MemberPredicate method to look for the member with reflection if its not in the generated dictionary...
from: SD.LLBLGen.Pro.ORMSupportClasses.MemberPredicate
protected override bool InterpretPredicate(IEntityCore entity)
{
//...
object memberData = null;
if (!allMemberData.TryGetValue(_memberName, out memberData))
{
//if not in dictionary then inspect with reflection
PropertyInfo pi = entity.GetType().GetProperty(_memberName);
if (pi != null)
{
memberData = pi.GetValue(entity, null);
}
else
{
// member not found
throw new ORMInterpretationException(string.Format("The member '{0}' isn't found in the entity '{1}'", _memberName, entity.LLBLGenProEntityName));
}
}
//...