@@ -250,14 +250,7 @@ private IMongoQuery BuildAnyQuery(MethodCallExpression methodCallExpression)
250
250
{
251
251
var arguments = methodCallExpression . Arguments . ToArray ( ) ;
252
252
var serializationInfo = GetSerializationInfo ( arguments [ 0 ] ) ;
253
- var itemSerializerProvider = serializationInfo . Serializer as IBsonItemSerializationInfoProvider ;
254
- if ( itemSerializerProvider == null )
255
- {
256
- return null ;
257
- }
258
-
259
- var itemSerializationInfo = itemSerializerProvider . GetItemSerializationInfo ( ) ;
260
- if ( itemSerializationInfo == null )
253
+ if ( serializationInfo == null )
261
254
{
262
255
return null ;
263
256
}
@@ -270,6 +263,18 @@ private IMongoQuery BuildAnyQuery(MethodCallExpression methodCallExpression)
270
263
}
271
264
else if ( arguments . Length == 2 )
272
265
{
266
+ var itemSerializationInfoProvider = serializationInfo . Serializer as IBsonItemSerializationInfoProvider ;
267
+ if ( itemSerializationInfoProvider == null )
268
+ {
269
+ return null ;
270
+ }
271
+
272
+ var itemSerializationInfo = itemSerializationInfoProvider . GetItemSerializationInfo ( ) ;
273
+ if ( itemSerializationInfo == null )
274
+ {
275
+ return null ;
276
+ }
277
+
273
278
if ( ! ( itemSerializationInfo . Serializer is IBsonMemberSerializationInfoProvider ) )
274
279
{
275
280
var message = string . Format ( "Any is only support for items that serialize into documents. The current serializer is {0} and must implement {1} for participation in Any queries." ,
@@ -1506,8 +1511,11 @@ private BsonSerializationInfo GetSerializationInfo(Expression expression)
1506
1511
if ( parameterExpression != null )
1507
1512
{
1508
1513
IBsonSerializer serializer ;
1509
- if ( ! _parameterSerializers . TryGetValue ( parameterExpression , out serializer ) )
1514
+ if ( ! _parameterSerializers . TryGetValue ( parameterExpression , out serializer ) )
1515
+ {
1510
1516
serializer = BsonSerializer . LookupSerializer ( parameterExpression . Type ) ;
1517
+ }
1518
+
1511
1519
return new BsonSerializationInfo (
1512
1520
null , // elementName
1513
1521
serializer ,
0 commit comments