public virtual IEntityReader <IdType, EntityType> WithChildForParentId (IEntityReader childReader , IdType id , string childJoinFieldName , Action <IList <EntityType>, IList <object> > setOnParentVisitor , bool withJoins = true) { childReader.ClearAllQueries(); childReader .WithAlias(TableAlias + "_" + childReader.TableAlias) .Where(new QueryElement() { TableAlias = childReader.TableAlias, FieldName = childJoinFieldName, Operator = Operator.Equals, Value = id }); if (withJoins) { childReader.WithAllJoins(); } return(WithChild(childReader, childJoinFieldName, setOnParentVisitor)); }
public virtual IEntityReader <IdType, EntityType> WithChildForExistingId (IEntityReader childReader , string paramName , string childJoinFieldName , Action <IList <EntityType>, IList <object> > setOnParentVisitor) { childReader.ClearAllQueries(); childReader .WithAlias(TableAlias + "_" + childReader.TableAlias) .Where(new QueryElement() { TableAlias = childReader.TableAlias, FieldName = childJoinFieldName, Operator = Operator.Equals, ParamNames = new string[] { paramName } }); childReader.WithAllJoins(); return(WithChild(childReader, childJoinFieldName, setOnParentVisitor)); }