diff --git a/src/EFCore/Storage/Json/JsonConvertedValueReaderWriter.cs b/src/EFCore/Storage/Json/JsonConvertedValueReaderWriter.cs index 07ced68e630..8c137b0e3df 100644 --- a/src/EFCore/Storage/Json/JsonConvertedValueReaderWriter.cs +++ b/src/EFCore/Storage/Json/JsonConvertedValueReaderWriter.cs @@ -55,5 +55,9 @@ public override Expression ConstructorExpression => Expression.New( _constructorInfo, ((ICompositeJsonValueReaderWriter)this).InnerReaderWriter.ConstructorExpression, - ((IJsonConvertedValueReaderWriter)this).Converter.ConstructorExpression); + // We shouldn't quote converters, because it will create a new instance every time and + // it will have to compile the expression again and + // it will have a negative performance impact. See #36856 for more info. + // This means this is currently unsupported scenario for precompilation. + Expression.Constant(((IJsonConvertedValueReaderWriter)this).Converter)); }