@@ -56,17 +56,27 @@ protected byte[] PostData(object data)
5656 var s = data as string ;
5757 if ( s != null ) return s . Utf8Bytes ( ) ;
5858
59- var ss = data as IEnumerable < string > ;
60- if ( ss != null ) return ( string . Join ( "\n " , ss ) + "\n " ) . Utf8Bytes ( ) ;
59+ var dataType = data . GetType ( ) ;
60+
61+ if ( typeof ( IEnumerable < string > ) . IsAssignableFrom ( dataType ) )
62+ {
63+ var ss = ( IEnumerable < string > ) data ;
64+ return ( string . Join ( "\n " , ss ) + "\n " ) . Utf8Bytes ( ) ;
65+ }
66+
67+ if ( typeof ( IEnumerable < object > ) . IsAssignableFrom ( dataType ) )
68+ {
69+ var so = ( IEnumerable < object > ) data ;
70+ var joined = string . Join ( "\n " , so
71+ . Select ( soo => this . _serializer . Serialize ( soo , SerializationFormatting . None ) . Utf8String ( ) ) ) + "\n " ;
72+ return joined . Utf8Bytes ( ) ;
73+ }
6174
62- var so = data as IEnumerable < object > ;
6375 var indent = this . _settings . UsesPrettyRequests
6476 ? SerializationFormatting . Indented
6577 : SerializationFormatting . None ;
66- if ( so == null ) return this . _serializer . Serialize ( data , indent ) ;
67- var joined = string . Join ( "\n " , so
68- . Select ( soo => this . _serializer . Serialize ( soo , SerializationFormatting . None ) . Utf8String ( ) ) ) + "\n " ;
69- return joined . Utf8Bytes ( ) ;
78+
79+ return this . _serializer . Serialize ( data , indent ) ;
7080 }
7181
7282 protected static bool IsValidResponse ( ITransportRequestState requestState , IElasticsearchResponse streamResponse )
0 commit comments