@@ -590,45 +590,40 @@ protected override PgConverter<T> CreateConverter(PgConverterResolution effectiv
590590 protected override PgConverterResolution? GetEffectiveResolution ( T ? values , PgTypeId ? expectedEffectivePgTypeId )
591591 {
592592 PgConverterResolution? resolution = null ;
593- if ( values is null )
593+ switch ( values )
594594 {
595- resolution = EffectiveTypeInfo . GetDefaultResolution ( expectedEffectivePgTypeId ) ;
596- }
597- else
598- {
599- switch ( values )
600- {
601- case TElement [ ] array:
602- foreach ( var value in array)
603- {
604- var result = EffectiveTypeInfo . GetResolution ( value , resolution ? . PgTypeId ?? expectedEffectivePgTypeId ) ;
605- resolution ??= result ;
606- }
607- break ;
608- case List < TElement > list :
609- foreach ( var value in list)
610- {
611- var result = EffectiveTypeInfo . GetResolution ( value , resolution ? . PgTypeId ?? expectedEffectivePgTypeId ) ;
612- resolution ??= result ;
613- }
614- break ;
615- case IList < TElement > list :
616- foreach ( var value in list)
617- {
618- var result = EffectiveTypeInfo . GetResolution ( value , resolution ? . PgTypeId ?? expectedEffectivePgTypeId ) ;
619- resolution ??= result ;
620- }
621- break ;
622- case Array array:
623- foreach ( var value in array)
624- {
625- var result = EffectiveTypeInfo . GetResolutionAsObject ( value , resolution ? . PgTypeId ?? expectedEffectivePgTypeId ) ;
626- resolution ??= result ;
627- }
628- break ;
629- default :
630- throw new NotSupportedException ( ) ;
631- }
595+ case TElement [ ] array:
596+ foreach ( var value in array)
597+ {
598+ var result = EffectiveTypeInfo . GetResolution ( value , resolution ? . PgTypeId ?? expectedEffectivePgTypeId ) ;
599+ resolution ??= result ;
600+ }
601+ break ;
602+ case List < TElement > list :
603+ foreach ( var value in list)
604+ {
605+ var result = EffectiveTypeInfo . GetResolution ( value , resolution ? . PgTypeId ?? expectedEffectivePgTypeId ) ;
606+ resolution ??= result ;
607+ }
608+ break ;
609+ case IList < TElement > list :
610+ foreach ( var value in list)
611+ {
612+ var result = EffectiveTypeInfo . GetResolution ( value , resolution ? . PgTypeId ?? expectedEffectivePgTypeId ) ;
613+ resolution ??= result ;
614+ }
615+ break ;
616+ case Array array:
617+ foreach ( var value in array)
618+ {
619+ var result = EffectiveTypeInfo . GetResolutionAsObject ( value , resolution ? . PgTypeId ?? expectedEffectivePgTypeId ) ;
620+ resolution ??= result ;
621+ }
622+ break ;
623+ case null :
624+ break ;
625+ default :
626+ throw new NotSupportedException ( ) ;
632627 }
633628
634629 return resolution ;
0 commit comments