Ensure CamelCasePropertyNamesContractResolver considers NamingStrategy in the cache #2930
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.
CamelCasePropertyNamesContractResolver
uses a shared contract cache across all instances but it doesn't consider the fact that sometimes different instances use different naming strategies. #2927In our case, we were using
CamelCasePropertyNamesContractResolver
in our ASP.NET app and then added Elsa Workflow which was using the same resolver with another naming strategy and broke our existing code. It is now fixed in Elsa Workflow (with this PR elsa-workflows/elsa-core#4521) but it took us a long time to understand what was wrong.