@@ -285,15 +285,6 @@ public bool IsClustered
285285 get => ( attributes & IndexAttributes . Clustered ) > 0 ;
286286 }
287287
288- /// <summary>
289- /// Unsubscribe ColumnInfoCollections from FieldInfo events to avoid memory leak
290- /// </summary>
291- public void Dispose ( )
292- {
293- IncludedColumns . Clear ( ) ;
294- ValueColumns . Clear ( ) ;
295- }
296-
297288 /// <inheritdoc/>
298289 public override void UpdateState ( )
299290 {
@@ -405,24 +396,6 @@ public IndexInfo(TypeInfo reflectedType, IndexAttributes indexAttributes, IndexI
405396 shortName = ancestorIndex . ShortName ;
406397 }
407398
408- /// <summary>
409- /// Used for cloning only
410- /// </summary>
411- private IndexInfo ( IndexInfo original )
412- {
413- shortName = original . shortName ;
414- Name = original . Name ;
415- KeyColumns = original . KeyColumns ;
416- IncludedColumns = original . IncludedColumns ;
417- ValueColumns = original . ValueColumns ;
418- ReflectedType = original . ReflectedType ;
419- attributes = original . attributes ;
420- DeclaringType = original . DeclaringIndex . DeclaringType ;
421- fillFactor = original . DeclaringIndex . FillFactor ;
422- filterExpression = original . DeclaringIndex . FilterExpression ;
423- DeclaringIndex = original . DeclaringIndex . DeclaringIndex ;
424- }
425-
426399 /// <summary>
427400 /// Initializes a new instance of this class.
428401 /// </summary>
@@ -447,5 +420,30 @@ public IndexInfo(TypeInfo reflectedType, IndexAttributes indexAttributes, IndexI
447420 foreach ( IndexInfo info in baseIndexes )
448421 UnderlyingIndexes . Add ( info ) ;
449422 }
423+
424+ /// <summary>
425+ /// Used for cloning only.
426+ /// </summary>
427+ private IndexInfo ( IndexInfo original )
428+ {
429+ Name = original . Name ;
430+ attributes = original . attributes ;
431+ shortName = original . shortName ;
432+ fillFactor = original . DeclaringIndex . FillFactor ;
433+ filterExpression = original . DeclaringIndex . FilterExpression ;
434+ KeyColumns = original . KeyColumns ;
435+ IncludedColumns = original . IncludedColumns ;
436+ ValueColumns = original . ValueColumns ;
437+ ReflectedType = original . ReflectedType ;
438+ DeclaringType = original . DeclaringIndex . DeclaringType ;
439+ DeclaringIndex = original . DeclaringIndex . DeclaringIndex ;
440+ }
441+
442+ /// Unsubscribe ColumnInfoCollections from FieldInfo events to avoid memory leak.
443+ public void Dispose ( )
444+ {
445+ IncludedColumns . Clear ( ) ;
446+ ValueColumns . Clear ( ) ;
447+ }
450448 }
451449}
0 commit comments