예제 #1
0
 public static Expression Include(QueryMapper mapper, Expression expression)
 {
     return(new RelationshipIncluder(mapper).Visit(expression));
 }
예제 #2
0
 private RelationshipIncluder(QueryMapper mapper)
 {
     this.mapper = mapper;
     this.policy = mapper.Translator.Police.Policy;
 }
예제 #3
0
 private RelationshipBinder(QueryMapper mapper)
 {
     this.mapper   = mapper;
     this.mapping  = mapper.Mapping;
     this.language = mapper.Translator.Linguist.Language;
 }
예제 #4
0
 public static Expression Bind(QueryMapper mapper, Expression expression)
 {
     return(new RelationshipBinder(mapper).Visit(expression));
 }
예제 #5
0
 public QueryTranslator(QueryLanguage language, QueryMapping mapping, QueryPolicy policy)
 {
     this.linguist = language.CreateLinguist(this);
     this.mapper   = mapping.CreateMapper(this);
     this.police   = policy.CreatePolice(this);
 }