@@ -35,7 +35,10 @@ public UnionSubclassEntityPersister(PersistentClass persistentClass, ICacheConcu
35
35
36
36
// TABLE
37
37
38
- tableName = persistentClass . Table . GetQualifiedName ( factory . Dialect , factory . Settings . DefaultCatalogName , factory . Settings . DefaultSchemaName ) ;
38
+ var dialect = factory . Dialect ;
39
+ var defaultCatalogName = factory . Settings . DefaultCatalogName ;
40
+ var defaultSchemaName = factory . Settings . DefaultSchemaName ;
41
+ tableName = persistentClass . Table . GetQualifiedName ( dialect , defaultCatalogName , defaultSchemaName ) ;
39
42
40
43
#region Custom SQL
41
44
@@ -116,7 +119,7 @@ public UnionSubclassEntityPersister(PersistentClass persistentClass, ICacheConcu
116
119
117
120
subclassSpaces = persistentClass . SubclassTableClosureIterator
118
121
. Select ( table =>
119
- table . GetQualifiedName ( factory . Dialect , factory . Settings . DefaultCatalogName , factory . Settings . DefaultSchemaName ) )
122
+ table . GetQualifiedName ( dialect , defaultCatalogName , defaultSchemaName ) )
120
123
. Distinct ( ) . ToArray ( ) ;
121
124
122
125
subquery = GenerateSubquery ( persistentClass , mapping ) ;
@@ -135,11 +138,11 @@ public UnionSubclassEntityPersister(PersistentClass persistentClass, ICacheConcu
135
138
if ( ! tab . IsAbstractUnionTable )
136
139
{
137
140
string _tableName =
138
- tab . GetQualifiedName ( factory . Dialect , factory . Settings . DefaultCatalogName , factory . Settings . DefaultSchemaName ) ;
141
+ tab . GetQualifiedName ( dialect , defaultCatalogName , defaultSchemaName ) ;
139
142
tableNames . Add ( _tableName ) ;
140
143
141
144
var names = tab . PrimaryKey . ColumnIterator
142
- . Select ( column => column . GetQuotedName ( factory . Dialect ) )
145
+ . Select ( column => column . GetQuotedName ( dialect ) )
143
146
. ToArray ( ) ;
144
147
145
148
keyColumns . Add ( names ) ;
@@ -301,23 +304,17 @@ protected override int TableSpan
301
304
302
305
protected string GenerateSubquery ( PersistentClass model , IMapping mapping )
303
306
{
304
- Dialect . Dialect dialect = Factory . Dialect ;
305
- Settings settings = Factory . Settings ;
307
+ var dialect = Factory . Dialect ;
308
+ var settings = Factory . Settings ;
306
309
307
310
if ( ! model . HasSubclasses )
308
311
{
309
312
return model . Table . GetQualifiedName ( dialect , settings . DefaultCatalogName , settings . DefaultSchemaName ) ;
310
313
}
311
314
312
- var columns = new HashSet < Column > ( ) ;
313
- foreach ( Table table in model . SubclassTableClosureIterator )
314
- {
315
- if ( ! table . IsAbstractUnionTable )
316
- {
317
- foreach ( Column column in table . ColumnIterator )
318
- columns . Add ( column ) ;
319
- }
320
- }
315
+ var columns = new HashSet < Column > ( model . SubclassTableClosureIterator
316
+ . Where ( table => ! table . IsAbstractUnionTable )
317
+ . SelectMany ( table => table . ColumnIterator ) ) ;
321
318
322
319
var buf = new StringBuilder ( "( " ) ;
323
320
0 commit comments