Mercurial > pub > bltoolkit
comparison Source/Data/Linq/Builder/PassThroughContext.cs @ 0:f990fcb411a9
Копия текущей версии из github
author | cin |
---|---|
date | Thu, 27 Mar 2014 21:46:09 +0400 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:f990fcb411a9 |
---|---|
1 using System; | |
2 using System.Linq.Expressions; | |
3 | |
4 namespace BLToolkit.Data.Linq.Builder | |
5 { | |
6 using Data.Sql; | |
7 | |
8 public abstract class PassThroughContext : IBuildContext | |
9 { | |
10 protected PassThroughContext(IBuildContext context) | |
11 { | |
12 Context = context; | |
13 | |
14 context.Builder.Contexts.Add(this); | |
15 } | |
16 | |
17 public IBuildContext Context { get; set; } | |
18 | |
19 #if DEBUG | |
20 string IBuildContext._sqlQueryText { get { return Context._sqlQueryText; } } | |
21 #endif | |
22 | |
23 public virtual ExpressionBuilder Builder { get { return Context.Builder; } } | |
24 public virtual Expression Expression { get { return Context.Expression; } } | |
25 public virtual SqlQuery SqlQuery { get { return Context.SqlQuery; } set { Context.SqlQuery = value; } } | |
26 public virtual IBuildContext Parent { get { return Context.Parent; } set { Context.Parent = value; } } | |
27 | |
28 public virtual void BuildQuery<T>(Query<T> query, ParameterExpression queryParameter) | |
29 { | |
30 Context.BuildQuery(query, queryParameter); | |
31 } | |
32 | |
33 public virtual Expression BuildExpression(Expression expression, int level) | |
34 { | |
35 return Context.BuildExpression(expression, level); | |
36 } | |
37 | |
38 public virtual SqlInfo[] ConvertToSql(Expression expression, int level, ConvertFlags flags) | |
39 { | |
40 return Context.ConvertToSql(expression, level, flags); | |
41 } | |
42 | |
43 public virtual SqlInfo[] ConvertToIndex(Expression expression, int level, ConvertFlags flags) | |
44 { | |
45 return Context.ConvertToIndex(expression, level, flags); | |
46 } | |
47 | |
48 public virtual IsExpressionResult IsExpression(Expression expression, int level, RequestFor requestFlag) | |
49 { | |
50 return Context.IsExpression(expression, level, requestFlag); | |
51 } | |
52 | |
53 public virtual IBuildContext GetContext(Expression expression, int level, BuildInfo buildInfo) | |
54 { | |
55 return Context.GetContext(expression, level, buildInfo); | |
56 } | |
57 | |
58 public virtual int ConvertToParentIndex(int index, IBuildContext context) | |
59 { | |
60 return Context.ConvertToParentIndex(index, context); | |
61 } | |
62 | |
63 public virtual void SetAlias(string alias) | |
64 { | |
65 Context.SetAlias(alias); | |
66 } | |
67 | |
68 public virtual ISqlExpression GetSubQuery(IBuildContext context) | |
69 { | |
70 return Context.GetSubQuery(context); | |
71 } | |
72 } | |
73 } |