|
|
@ -6,13 +6,32 @@ using System.Text; |
|
|
|
namespace FLocal.Core.DB { |
|
|
|
namespace FLocal.Core.DB { |
|
|
|
public class JoinSpec { |
|
|
|
public class JoinSpec { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private class TableSpec : ITableSpec { |
|
|
|
|
|
|
|
private readonly string _name; |
|
|
|
|
|
|
|
public TableSpec(string name) { |
|
|
|
|
|
|
|
this._name = name; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
public string name { |
|
|
|
|
|
|
|
get { |
|
|
|
|
|
|
|
return this._name; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
public string idName { |
|
|
|
|
|
|
|
get { |
|
|
|
|
|
|
|
throw new NotImplementedException(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public readonly ColumnSpec mainColumn; |
|
|
|
public readonly ColumnSpec mainColumn; |
|
|
|
|
|
|
|
|
|
|
|
public readonly ITableSpec additionalTable; |
|
|
|
public readonly ITableSpec additionalTable; |
|
|
|
|
|
|
|
public readonly ITableSpec additionalTableJoin; |
|
|
|
|
|
|
|
|
|
|
|
public JoinSpec(ColumnSpec mainColumn, ITableSpec additionalTable) { |
|
|
|
public JoinSpec(ColumnSpec mainColumn, ITableSpec additionalTable, string alias) { |
|
|
|
this.mainColumn = mainColumn; |
|
|
|
this.mainColumn = mainColumn; |
|
|
|
this.additionalTable = additionalTable; |
|
|
|
this.additionalTableJoin = additionalTable; |
|
|
|
|
|
|
|
this.additionalTable = new TableSpec(alias); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|