From b6fad2d193cebeae5b4092293b93ed345ce6c861 Mon Sep 17 00:00:00 2001 From: Austin Drenski Date: Tue, 15 May 2018 15:48:06 -0400 Subject: [PATCH 1/2] Bug fix for 502ce2a. NpgsqlRangeTranslator uses nameof(...) without checking the declaring type. This returns the unqualified name, such that all methods named Contains that reach this translator are handled. This commit adds a check to screen for the declaring type. --- .../ExpressionTranslators/Internal/NpgsqlRangeTranslator.cs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/EFCore.PG/Query/ExpressionTranslators/Internal/NpgsqlRangeTranslator.cs b/src/EFCore.PG/Query/ExpressionTranslators/Internal/NpgsqlRangeTranslator.cs index 39127c444..e6b0a270b 100644 --- a/src/EFCore.PG/Query/ExpressionTranslators/Internal/NpgsqlRangeTranslator.cs +++ b/src/EFCore.PG/Query/ExpressionTranslators/Internal/NpgsqlRangeTranslator.cs @@ -42,6 +42,11 @@ public class NpgsqlRangeTranslator : IMethodCallTranslator [CanBeNull] public Expression Translate(MethodCallExpression expression) { + if (expression.Method.DeclaringType != typeof(NpgsqlRangeExtensions)) + { + return null; + } + switch (expression.Method.Name) { case nameof(NpgsqlRangeExtensions.Contains): From 8c618f82d7d013a60b1edb3c9c7c90f6dabd598e Mon Sep 17 00:00:00 2001 From: Austin Drenski Date: Tue, 15 May 2018 16:38:13 -0400 Subject: [PATCH 2/2] Style consistency fix. --- .../ExpressionTranslators/Internal/NpgsqlRangeTranslator.cs | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/EFCore.PG/Query/ExpressionTranslators/Internal/NpgsqlRangeTranslator.cs b/src/EFCore.PG/Query/ExpressionTranslators/Internal/NpgsqlRangeTranslator.cs index e6b0a270b..f25cbbfd6 100644 --- a/src/EFCore.PG/Query/ExpressionTranslators/Internal/NpgsqlRangeTranslator.cs +++ b/src/EFCore.PG/Query/ExpressionTranslators/Internal/NpgsqlRangeTranslator.cs @@ -43,9 +43,7 @@ public class NpgsqlRangeTranslator : IMethodCallTranslator public Expression Translate(MethodCallExpression expression) { if (expression.Method.DeclaringType != typeof(NpgsqlRangeExtensions)) - { return null; - } switch (expression.Method.Name) {