[release/7.0] Use correct provider type for nullable value type with converter #30219
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.
Port of #29746
Fixes #29985
Description
In EF7, processing seed data in the model snapshot could result in an incorrect provider type when the property has a converter. This change ports a fix already in EF8 to ensure provider types are used correctly.
Customer impact
Many customers reporting that models with seed data will continually update this data on every migration, even though the data never changes. This means every generated migration contains Up and Down steps, even when the migration should be empty. No reasonable workaround.
How found
Multiple customer reports on 7.0.
Regression
Yes.
Testing
New tests added for this kind of seed data in the model snapshot.
Risk
Medium. Significant code changes, but these changes have been in the 8.0 code for several months now, and they are quirked here.