-
Notifications
You must be signed in to change notification settings - Fork 5.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Respond to feedback for deserialization constructors #21051
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
layomia
approved these changes
Oct 13, 2020
@@ -4,9 +4,9 @@ For consistency across all supported target framework monikers (TFMs), non-publi | |||
|
|||
#### Change description | |||
|
|||
On .NET Core 3.0 and 3.1, internal and private constructors can be used for deserialization. On .NET Standard 2.0 and 2.1, internal and private constructors are not allowed, and a <xref:System.MissingMethodException> is thrown if no public, parameterless constructor is defined. | |||
The standalone [System.Text.Json NuGet packages](https://www.nuget.org/packages/System.Text.Json/) that support .NET Standard 2.0 and higher, that is, versions 4.6.0-4.7.2, behave inconsistently with the built-in behavior on .NET Core 3.0 and 3.1. On .NET Core 3.x, internal and private constructors can be used for deserialization. In the standalone packages, internal and private constructors are not allowed, and a <xref:System.MissingMethodException> is thrown if no public, parameterless constructor is defined. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
internal and private constructors
I'd say non-public constructors since protected
ctors were also allowed.
gewarren
commented
Oct 13, 2020
...nges/serialization/5.0/non-public-parameterless-constructors-not-used-for-deserialization.md
Outdated
Show resolved
Hide resolved
…ss-constructors-not-used-for-deserialization.md
BillWagner
added a commit
that referenced
this pull request
Oct 14, 2020
* Respond to feedback for deserialization constructors (#21051) * Fixes #20949. (#21052) * Add f1-keyword for `class` used as generic type constraint (#21037) * Add f1-keyword for `class` used as generic type constraint * Add structconstraint * Update CS0267 message and simplify example (#21047) * Update CS0267 message and simplify example * Update ms.date * Added a link (#21058) * Fixes #20958. (#21054) * fix the source path for retired C# 7.x content (#21059) The "whats-new" folder was missing. * Removing redundant pipe character (#20931) * Update single-file.md (#20925) update ReadyToRun link now that we have the docs for it. * Remove statement about TLS 1.3 for .NET Core 3.0 (#20922) I think, TLS 1.3 won't be supported by .NET Core 3.0 since it's out of support and the implementation is coming with .NET 5, as stated in [Transport Layer Security (TLS) best practices with the .NET Framework](#4675 (comment)). This info should be removed, so we have no misleading information out there... 😉 * SslStream/NegotiateStream breaking change (#20979) * Add workload and app model to glossary (#21046) Co-authored-by: Genevieve Warren <[email protected]> * Breaking change for key-value pair serialization (#21050) * Update .NET Standard overview for .NET 5 (#20955) Co-authored-by: Genevieve Warren <[email protected]> * Update get-started-vscode.md (#21072) http to https after verifying link Co-authored-by: Genevieve Warren <[email protected]> Co-authored-by: Jon Senchyna <[email protected]> Co-authored-by: Youssef Victor <[email protected]> Co-authored-by: David Pine <[email protected]> Co-authored-by: Bill Wagner <[email protected]> Co-authored-by: William Whitwell Bailey <[email protected]> Co-authored-by: Lakshan Fernando <[email protected]> Co-authored-by: kapsiR <[email protected]> Co-authored-by: Tom Dykstra <[email protected]> Co-authored-by: icyfire0573 <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Related to #21025 .