comparison Source/Data/Linq/Builder/IBuildContext.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 #if DEBUG
5 #pragma warning disable 3010
6 #endif
7
8 namespace BLToolkit.Data.Linq.Builder
9 {
10 using Data.Sql;
11
12 public interface IBuildContext
13 {
14 #if DEBUG
15 // ReSharper disable InconsistentNaming
16 [CLSCompliant(false)]
17 string _sqlQueryText { get; }
18 // ReSharper restore InconsistentNaming
19 #endif
20
21 ExpressionBuilder Builder { get; }
22 Expression Expression { get; }
23 SqlQuery SqlQuery { get; set; }
24 IBuildContext Parent { get; set; }
25
26 void BuildQuery<T> (Query<T> query, ParameterExpression queryParameter);
27 Expression BuildExpression (Expression expression, int level);
28 SqlInfo[] ConvertToSql (Expression expression, int level, ConvertFlags flags);
29 SqlInfo[] ConvertToIndex (Expression expression, int level, ConvertFlags flags);
30 IsExpressionResult IsExpression (Expression expression, int level, RequestFor requestFlag);
31 IBuildContext GetContext (Expression expression, int level, BuildInfo buildInfo);
32 int ConvertToParentIndex(int index, IBuildContext context);
33 void SetAlias (string alias);
34 ISqlExpression GetSubQuery (IBuildContext context);
35 }
36 }