Fix BatchDelete and BatchUpdate with where expression and ValueConverter #497
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hello again :)
When using something like:
I got this exception:
The problem was that
CheckAndSetParametersForConvertibles
only applied the converter whenif (convertibleProperty.Key.ToLower() == parameterColumnName)
and that isn't the case here:convertibleProperty.Key = 'LocalDate'
andparameterColumnName = 'date'
. And also theCheckAndSetParametersForConvertibles
only worked when dealing with a string database type.The solution is to let EF Core convert the parameter itself using
IRelationalParameter.AddDbParameter(dbCommand, values);
inToParametrizedSql()
.I'm not sure if this fix also needs to be in the else part of
ToParametrizedSql()
whenrelationalCommandCache == null
, because I have no clue how to trigger that branch with EF Core 3.1 ...