-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Update Utf8JsonWriter for null strings, double/single formatting, and consistency. #3143
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
Changes from 1 commit
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
@@ -30,9 +30,9 @@ | |||||||||||
|
||||||||||||
`Utf8JsonWriter` writes the text sequentially with no caching and by default adheres to the [JSON RFC](https://tools.ietf.org/html/rfc8259), with the exception of writing comments. | ||||||||||||
|
||||||||||||
A method that attempts to write invalid JSON when validation is enabled throws a <xref:System.InvalidOperationException> with a context-specific error message. | ||||||||||||
A method that attempts to write invalid JSON when validation is enabled throws an <xref:System.InvalidOperationException> with a context-specific error message. | ||||||||||||
|
||||||||||||
To be able to format the output with indentation and white space OR to skip validation, create an instance of <xref:System.Text.Json.JsonWriterOptions> and pass it in to the writer. | ||||||||||||
To be able to format the output with indentation and white space, to skip validation, OR to customize the escaping behavior, create an instance of <xref:System.Text.Json.JsonWriterOptions> and pass it in to the writer. | ||||||||||||
|
||||||||||||
]]></format> | ||||||||||||
</remarks> | ||||||||||||
|
@@ -56,7 +56,7 @@ To be able to format the output with indentation and white space OR to skip vali | |||||||||||
<Docs> | ||||||||||||
<param name="bufferWriter">The destination for writing JSON text.</param> | ||||||||||||
<param name="options">Defines the customized behavior of the <see cref="T:System.Text.Json.Utf8JsonWriter" /> By default, it writes minimized JSON (with no extra whitespace) and validates that the JSON being written is structurally valid according to the JSON RFC.</param> | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Adding missing dot to @mairaw's suggestion.
Suggested change
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The options isn't an enum though. |
||||||||||||
<summary>Constructs a new <see cref="T:System.Text.Json.Utf8JsonWriter" /> instance with a specified <see langword="System.Buffers.IBufferWriter<System.Byte>" />.</summary> | ||||||||||||
carlossanlop marked this conversation as resolved.
Show resolved
Hide resolved
|
||||||||||||
<summary>Constructs a new <see cref="T:System.Text.Json.Utf8JsonWriter" /> instance with a specified `IBufferWriter<byte>` to write the output to.</summary> | ||||||||||||
<remarks>To be added.</remarks> | ||||||||||||
<exception cref="T:System.ArgumentNullException"> | ||||||||||||
<paramref name="bufferWriter" /> is <see langword="null" />.</exception> | ||||||||||||
|
@@ -80,7 +80,7 @@ To be able to format the output with indentation and white space OR to skip vali | |||||||||||
<Docs> | ||||||||||||
<param name="utf8Json">The destination for writing JSON text.</param> | ||||||||||||
<param name="options">Defines the customized behavior of the <see cref="T:System.Text.Json.Utf8JsonWriter" /> By default, it writes minimized JSON (with no extra whitespace) and validates that the JSON being written is structurally valid according to the JSON RFC.</param> | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||||
<summary>Constructs a new <see cref="T:System.Text.Json.Utf8JsonWriter" /> instance with a specified <paramref name="utf8Json" />.</summary> | ||||||||||||
<summary>Constructs a new <see cref="T:System.Text.Json.Utf8JsonWriter" /> instance with a specified `Stream` to write the output to.</summary> | ||||||||||||
<remarks>To be added.</remarks> | ||||||||||||
<exception cref="T:System.ArgumentNullException"> | ||||||||||||
<paramref name="utf8Json" /> is <see langword="null" />.</exception> | ||||||||||||
|
@@ -322,8 +322,8 @@ In the case of <xref:System.IO.Stream>, this writes the data to the stream and f | |||||||||||
<ReturnType>System.Text.Json.JsonWriterOptions</ReturnType> | ||||||||||||
</ReturnValue> | ||||||||||||
<Docs> | ||||||||||||
<summary>Gets the custom behavior when writing JSON using this instance, which indicates whether to format the output while writing and whether to skip structural JSON validation.</summary> | ||||||||||||
<value>An object that defines the behavior of this instance for formatting and validation.</value> | ||||||||||||
<summary>Gets the custom behavior when writing JSON using this instance, which indicates whether to format the output while writing, whether to skip structural JSON validation, and which characters to escape.</summary> | ||||||||||||
<value>Defines the behavior of this instance of the writer for formatting, validation, and escaping.</value> | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. JsonWriterOptions is a struct, not a class. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It's my understanding that There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Maybe something like this? It shouldn't start with a verb here.
Suggested change
|
||||||||||||
<remarks>To be added.</remarks> | ||||||||||||
</Docs> | ||||||||||||
</Member> | ||||||||||||
|
@@ -383,7 +383,7 @@ The <xref:System.Text.Json.Utf8JsonWriter> will continue to use the original wri | |||||||||||
|
||||||||||||
## Remarks | ||||||||||||
|
||||||||||||
The <xref:System.Text.Json.Utf8JsonWriter> will continue to use the original writer options but now writes to `bufferWriter` as the new destination. | ||||||||||||
The <xref:System.Text.Json.Utf8JsonWriter> will continue to use the original writer options but now write to `bufferWriter` as the new destination. | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why did you remove the "s"? Utf8JsonWriter is still a singular. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Seemed to make more grammatical sense to my ear. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm on the fence on this one. @rpetrusha can you help? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I agree with @jozkee, The Utf8JsonWriter is who's writing. It writes. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The other option would be to add will write There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The tense of write is future, so it should be "write" rather than "writes". As Maira points out, it could also be changed to "will write", and that's fine, but it's not necessary. |
||||||||||||
|
||||||||||||
]]></format> | ||||||||||||
</remarks> | ||||||||||||
|
@@ -806,7 +806,7 @@ The property name should already be escaped when the instance of <xref:System.Te | |||||||||||
<Parameter Name="utf8Value" Type="System.ReadOnlySpan<System.Byte>" /> | ||||||||||||
</Parameters> | ||||||||||||
<Docs> | ||||||||||||
<param name="utf8Value">The UTF-8 encoded value to be written as a JSON comment within /*..*/.</param> | ||||||||||||
<param name="utf8Value">The UTF-8 encoded value to be written as a JSON comment within `/*..*/`.</param> | ||||||||||||
carlossanlop marked this conversation as resolved.
Show resolved
Hide resolved
|
||||||||||||
<summary>Writes a UTF-8 text value as a JSON comment.</summary> | ||||||||||||
<remarks> | ||||||||||||
<format><![CDATA[ | ||||||||||||
|
@@ -821,7 +821,7 @@ The comment value is not escaped before writing. | |||||||||||
|
||||||||||||
-or- | ||||||||||||
|
||||||||||||
<paramref name="utf8Value" /> contains a comment delimiter (that is, */).</exception> | ||||||||||||
<paramref name="utf8Value" /> contains a comment delimiter (that is, `*/`).</exception> | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. From Maira's suggestion above, use
Suggested change
I'll leave the suggestions to make it easier to commit them. |
||||||||||||
</Docs> | ||||||||||||
</Member> | ||||||||||||
<Member MemberName="WriteCommentValue"> | ||||||||||||
|
@@ -843,7 +843,7 @@ The comment value is not escaped before writing. | |||||||||||
<Parameter Name="value" Type="System.ReadOnlySpan<System.Char>" /> | ||||||||||||
</Parameters> | ||||||||||||
<Docs> | ||||||||||||
<param name="value">The UTF-16 encoded value to be written as a UTF-8 transcoded JSON comment within /*..*/.</param> | ||||||||||||
<param name="value">The UTF-16 encoded value to be written as a UTF-8 transcoded JSON comment within `/*..*/`.</param> | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||||
<summary>Writes a UTF-16 text value as a JSON comment.</summary> | ||||||||||||
<remarks> | ||||||||||||
<format><![CDATA[ | ||||||||||||
|
@@ -854,11 +854,11 @@ The comment value is not escaped before writing. | |||||||||||
|
||||||||||||
]]></format> | ||||||||||||
</remarks> | ||||||||||||
<exception cref="T:System.ArgumentException">The specified value is too large OR. | ||||||||||||
<exception cref="T:System.ArgumentException">The specified value is too large. | ||||||||||||
|
||||||||||||
-or- | ||||||||||||
|
||||||||||||
<paramref name="value" /> contains a comment delimiter (that is, */).</exception> | ||||||||||||
<paramref name="value" /> contains a comment delimiter (that is, `*/`).</exception> | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||||
</Docs> | ||||||||||||
</Member> | ||||||||||||
<Member MemberName="WriteCommentValue"> | ||||||||||||
|
@@ -880,7 +880,7 @@ The comment value is not escaped before writing. | |||||||||||
<Parameter Name="value" Type="System.String" /> | ||||||||||||
</Parameters> | ||||||||||||
<Docs> | ||||||||||||
<param name="value">The UTF-16 encoded value to be written as a UTF-8 transcoded JSON comment within /*..*/.</param> | ||||||||||||
<param name="value">The UTF-16 encoded value to be written as a UTF-8 transcoded JSON comment within `/*..*/`.</param> | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||||
<summary>Writes a string text value as a JSON comment.</summary> | ||||||||||||
<remarks> | ||||||||||||
<format><![CDATA[ | ||||||||||||
|
@@ -895,7 +895,7 @@ The comment value is not escaped before writing. | |||||||||||
|
||||||||||||
-or- | ||||||||||||
|
||||||||||||
<paramref name="value" /> contains a comment delimiter (that is, */).</exception> | ||||||||||||
<paramref name="value" /> contains a comment delimiter (that is, `*/`).</exception> | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||||
<exception cref="T:System.ArgumentNullException">The <paramref name="value" /> parameter is <see langword="null" />.</exception> | ||||||||||||
</Docs> | ||||||||||||
</Member> | ||||||||||||
|
@@ -1167,7 +1167,7 @@ The property name is escaped before writing. | |||||||||||
|
||||||||||||
## Remarks | ||||||||||||
|
||||||||||||
Writes the <xref:System.Double> using the default <xref:System.Buffers.StandardFormat> (that is, 'G'). | ||||||||||||
Writes the <xref:System.Double> using the default <xref:System.Buffers.StandardFormat> (that is, 'G') on .NET Core 3.0 or higher. Uses 'G17' on any other framework. | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||||
|
||||||||||||
The property name is escaped before writing. | ||||||||||||
|
||||||||||||
|
@@ -1281,7 +1281,7 @@ The property name is escaped before writing. | |||||||||||
|
||||||||||||
## Remarks | ||||||||||||
|
||||||||||||
Writes the <xref:System.Single> using the default <xref:System.Buffers.StandardFormat> (that is, 'G'). | ||||||||||||
Writes the <xref:System.Single> using the default <xref:System.Buffers.StandardFormat> (that is, 'G') on .NET Core 3.0 or higher. Uses 'G9' on any other framework. | ||||||||||||
|
||||||||||||
The property name is escaped before writing. | ||||||||||||
|
||||||||||||
|
@@ -1443,7 +1443,7 @@ The property name is escaped before writing. | |||||||||||
|
||||||||||||
## Remarks | ||||||||||||
|
||||||||||||
Writes the <xref:System.Double> using the default <xref:System.Buffers.StandardFormat> (that is, 'G'). | ||||||||||||
Writes the <xref:System.Double> using the default <xref:System.Buffers.StandardFormat> (that is, 'G') on .NET Core 3.0 or higher. Uses 'G17' on any other framework. | ||||||||||||
|
||||||||||||
The property name is escaped before writing. | ||||||||||||
|
||||||||||||
|
@@ -1557,7 +1557,7 @@ The property name is escaped before writing. | |||||||||||
|
||||||||||||
## Remarks | ||||||||||||
|
||||||||||||
Writes the <xref:System.Single> using the default <xref:System.Buffers.StandardFormat> (that is, 'G'). | ||||||||||||
Writes the <xref:System.Single> using the default <xref:System.Buffers.StandardFormat> (that is, 'G') on .NET Core 3.0 or higher. Uses 'G9' on any other framework. | ||||||||||||
|
||||||||||||
The property name is escaped before writing. | ||||||||||||
|
||||||||||||
|
@@ -1720,7 +1720,7 @@ The property name is escaped before writing. | |||||||||||
|
||||||||||||
## Remarks | ||||||||||||
|
||||||||||||
Writes the <xref:System.Double> using the default <xref:System.Buffers.StandardFormat> (that is, 'G'). | ||||||||||||
Writes the <xref:System.Double> using the default <xref:System.Buffers.StandardFormat> (that is, 'G') on .NET Core 3.0 or higher. Uses 'G17' on any other framework. | ||||||||||||
|
||||||||||||
The property name is escaped before writing. | ||||||||||||
|
||||||||||||
|
@@ -1837,7 +1837,7 @@ The property name is escaped before writing. | |||||||||||
|
||||||||||||
## Remarks | ||||||||||||
|
||||||||||||
Writes the <xref:System.Single> using the default <xref:System.Buffers.StandardFormat> (that is, 'G'). | ||||||||||||
Writes the <xref:System.Single> using the default <xref:System.Buffers.StandardFormat> (that is, 'G') on .NET Core 3.0 or higher. Uses 'G9' on any other framework. | ||||||||||||
|
||||||||||||
The property name is escaped before writing. | ||||||||||||
|
||||||||||||
|
@@ -2001,7 +2001,7 @@ The property name should already be escaped when the instance of <xref:System.Te | |||||||||||
|
||||||||||||
## Remarks | ||||||||||||
|
||||||||||||
Writes the <xref:System.Double> using the default <xref:System.Buffers.StandardFormat> (that is, 'G'). | ||||||||||||
Writes the <xref:System.Double> using the default <xref:System.Buffers.StandardFormat> (that is, 'G') on .NET Core 3.0 or higher. Uses 'G17' on any other framework. | ||||||||||||
|
||||||||||||
The property name should already be escaped when the instance of <xref:System.Text.Json.JsonEncodedText> was created. | ||||||||||||
|
||||||||||||
|
@@ -2112,7 +2112,7 @@ The property name should already be escaped when the instance of <xref:System.Te | |||||||||||
|
||||||||||||
## Remarks | ||||||||||||
|
||||||||||||
Writes the <xref:System.Single> using the default <xref:System.Buffers.StandardFormat> (that is, 'G'). | ||||||||||||
Writes the <xref:System.Single> using the default <xref:System.Buffers.StandardFormat> (that is, 'G') on .NET Core 3.0 or higher. Uses 'G9' on any other framework. | ||||||||||||
|
||||||||||||
The property name should already be escaped when the instance of <xref:System.Text.Json.JsonEncodedText> was created. | ||||||||||||
|
||||||||||||
|
@@ -2264,7 +2264,7 @@ This method writes the <xref:System.Decimal> value using the default <xref:Syste | |||||||||||
|
||||||||||||
## Remarks | ||||||||||||
|
||||||||||||
This method writes the <xref:System.Double> value using the default <xref:System.Buffers.StandardFormat> (that is, 'G'). | ||||||||||||
This method writes the <xref:System.Double> value using the default <xref:System.Buffers.StandardFormat> (that is, 'G') on .NET Core 3.0 or higher. Uses 'G17' on any other framework. | ||||||||||||
|
||||||||||||
]]></format> | ||||||||||||
</remarks> | ||||||||||||
|
@@ -2363,7 +2363,7 @@ This method writes the <xref:System.Int64> value using the default <xref:System. | |||||||||||
|
||||||||||||
## Remarks | ||||||||||||
|
||||||||||||
This method writes the <xref:System.Single> value using the default <xref:System.Buffers.StandardFormat> (that is, 'G'). | ||||||||||||
This method writes the <xref:System.Single> value using the default <xref:System.Buffers.StandardFormat> (that is, 'G') on .NET Core 3.0 or higher. Uses 'G9' on any other framework. | ||||||||||||
|
||||||||||||
]]></format> | ||||||||||||
</remarks> | ||||||||||||
|
@@ -2756,7 +2756,7 @@ The property name should already be escaped when the instance of <xref:System.Te | |||||||||||
</remarks> | ||||||||||||
<exception cref="T:System.InvalidOperationException">The depth of the JSON has exceeded the maximum depth of 1000. | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. nit: I could also do this in a separate PR
Suggested change
|
||||||||||||
|
||||||||||||
- or - | ||||||||||||
-or- | ||||||||||||
carlossanlop marked this conversation as resolved.
Show resolved
Hide resolved
|
||||||||||||
|
||||||||||||
Validation is enabled, and this method would result in writing invalid JSON.</exception> | ||||||||||||
</Docs> | ||||||||||||
|
@@ -2934,7 +2934,7 @@ The property name should already be escaped when the instance of <xref:System.Te | |||||||||||
</remarks> | ||||||||||||
<exception cref="T:System.InvalidOperationException">The depth of the JSON has exceeded the maximum depth of 1000. | ||||||||||||
|
||||||||||||
- or - | ||||||||||||
-or- | ||||||||||||
|
||||||||||||
Validation is enabled, and this method would result in writing invalid JSON.</exception> | ||||||||||||
</Docs> | ||||||||||||
|
@@ -3155,6 +3155,8 @@ The property name and value are escaped before writing. | |||||||||||
|
||||||||||||
The property name and value are escaped before writing. | ||||||||||||
|
||||||||||||
If <paramref name="value"/> is <see langword="null"/> the JSON null value is written, as if <see cref="WriteNull(System.ReadOnlySpan{byte})"/> was called. | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Addressing recent changes around "null:
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why not use the langword null here (rather than back-ticks)? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Ah I see. Yep, that needs to be fixed. Thanks, @mairaw. |
||||||||||||
|
||||||||||||
]]></format> | ||||||||||||
</remarks> | ||||||||||||
<exception cref="T:System.ArgumentException">The specified property name or value is too large.</exception> | ||||||||||||
|
@@ -3415,6 +3417,8 @@ The property name and value are escaped before writing. | |||||||||||
|
||||||||||||
The property name and value are escaped before writing. | ||||||||||||
|
||||||||||||
If <paramref name="value"/> is <see langword="null"/> the JSON null value is written, as if <see cref="WriteNull(System.ReadOnlySpan{char})"/> was called. | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||||
|
||||||||||||
]]></format> | ||||||||||||
</remarks> | ||||||||||||
<exception cref="T:System.ArgumentException">The specified property name or value is too large.</exception> | ||||||||||||
|
@@ -3680,6 +3684,8 @@ The property name and value are escaped before writing. | |||||||||||
|
||||||||||||
The property name and value are escaped before writing. | ||||||||||||
|
||||||||||||
If <paramref name="value"/> is <see langword="null"/> the JSON null value is written, as if <see cref="WriteNull(string)"/> were called. | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||||
|
||||||||||||
]]></format> | ||||||||||||
</remarks> | ||||||||||||
<exception cref="T:System.ArgumentException">The specified property name or value is too large.</exception> | ||||||||||||
|
@@ -3909,6 +3915,8 @@ The property name should already be escaped when the instance of <xref:System.Te | |||||||||||
|
||||||||||||
The value is escaped before writing. | ||||||||||||
|
||||||||||||
If <paramref name="value"/> is <see langword="null"/> the JSON null value is written, as if <see cref="WriteNull(System.Text.Json.JsonEncodedText)"/> was called. | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||||
|
||||||||||||
]]></format> | ||||||||||||
</remarks> | ||||||||||||
<exception cref="T:System.ArgumentException">The specified value is too large.</exception> | ||||||||||||
|
@@ -3947,6 +3955,8 @@ The property name should already be escaped when the instance of <xref:System.Te | |||||||||||
|
||||||||||||
The value is escaped before writing. | ||||||||||||
|
||||||||||||
If <paramref name="value"/> is <see langword="null"/> the JSON null value is written, as if <see cref="WriteNull(System.Text.Json.JsonEncodedText)"/> was called. | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||||
|
||||||||||||
]]></format> | ||||||||||||
</remarks> | ||||||||||||
<exception cref="T:System.ArgumentException">The specified value is too large.</exception> | ||||||||||||
|
@@ -4185,6 +4195,8 @@ The value is escaped before writing. | |||||||||||
|
||||||||||||
The value is escaped before writing. | ||||||||||||
|
||||||||||||
If <paramref name="value"/> is <see langword="null"/> the JSON null value is written, as if <see cref="WriteNullValue"/> was called. | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
|
||||||||||||
|
||||||||||||
]]></format> | ||||||||||||
</remarks> | ||||||||||||
<exception cref="T:System.ArgumentException">The specified value is too large.</exception> | ||||||||||||
|
Uh oh!
There was an error while loading. Please reload this page.