From 804b0213052ee0f25ed4562b787e33fd7c159af5 Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Mon, 6 Jul 2026 17:50:15 -0700 Subject: [PATCH 1/4] Remove remarks about out of support .NET versions --- xml/System.Reflection/Assembly.xml | 4 +- xml/System.Reflection/IReflect.xml | 2 +- .../DllImportAttribute.xml | 2 +- .../Marshal.xml | 10 +- .../NativeLibrary.xml | 2 +- .../RuntimeInformation.xml | 5 +- .../AssemblyLoadContext.xml | 1 - .../BinaryFormatter.xml | 4 +- .../SslProtocols.xml | 4 +- xml/System.Security.Cryptography/AesCng.xml | 4 +- .../CryptoStream.xml | 6 +- .../FromBase64Transform.xml | 3 +- xml/System.Security.Cryptography/Oid.xml | 8 +- .../TripleDESCng.xml | 4 +- .../JsonIncludeAttribute.xml | 1 - xml/System.Text.Json/Utf8JsonReader.xml | 2 +- xml/System.Text.Json/Utf8JsonWriter.xml | 40 +-- xml/System.Text/Encoding.xml | 288 +++++++++--------- xml/System.Threading.Tasks/Task.xml | 6 +- xml/System.Threading/ReaderWriterLockSlim.xml | 2 +- 20 files changed, 197 insertions(+), 201 deletions(-) diff --git a/xml/System.Reflection/Assembly.xml b/xml/System.Reflection/Assembly.xml index 541a86211b8..cd5758dcdb7 100644 --- a/xml/System.Reflection/Assembly.xml +++ b/xml/System.Reflection/Assembly.xml @@ -1656,7 +1656,7 @@ Many members of the class provide information The `name` argument should not include the path to the file. -In .NET 5 and later versions, for bundled assemblies, this method throws an exception. +For bundled assemblies, this method throws an exception. ]]> @@ -3329,7 +3329,7 @@ If there are assembly-qualified generic type parameters in the type name string, Gets a value indicating whether the assembly was loaded from the global assembly cache (.NET Framework only). in all cases. - This property is marked obsolete starting in .NET 5, and generates a compile-time warning. + This property is marked obsolete and generates a compile-time warning. diff --git a/xml/System.Reflection/IReflect.xml b/xml/System.Reflection/IReflect.xml index b20ee9d6c07..d4ff2cff086 100644 --- a/xml/System.Reflection/IReflect.xml +++ b/xml/System.Reflection/IReflect.xml @@ -50,7 +50,7 @@ In .NET 10 and later versions, no COM object casts successfully to this interface. If you need access, it's recommended to project and define a managed definition of `IDispatch` or `IDispatchEx`. -In .NET 5 through .NET 9, COM objects that implement `IDispatchEx` can be cast to this interface, but all methods throw `TypeLoadException`. +In .NET 8 and .NET 9, COM objects that implement `IDispatchEx` can be cast to this interface, but all methods throw `TypeLoadException`. ]]> diff --git a/xml/System.Runtime.InteropServices/DllImportAttribute.xml b/xml/System.Runtime.InteropServices/DllImportAttribute.xml index 7ef58fbc814..89aebc9964a 100644 --- a/xml/System.Runtime.InteropServices/DllImportAttribute.xml +++ b/xml/System.Runtime.InteropServices/DllImportAttribute.xml @@ -584,7 +584,7 @@ For additional information about using the platform invoke service to access fun `true` to indicate that the callee will set an error via `SetLastError` on Windows or `errno` on other platforms; otherwise, `false`. The default is `false`. If this field is set to `true`, the runtime marshaler calls `GetLastError` or `errno` and caches the value returned to prevent it from being overwritten by other API calls. - On .NET 6 and later, you can retrieve the error code by calling . On earlier .NET versions, call . + You can retrieve the error code by calling . The error information is cleared (set to `0`) before invoking the callee when this field is set to `true`. This means that error information returned by and represents only the error information from the last p/invoke with set to `true`. diff --git a/xml/System.Runtime.InteropServices/Marshal.xml b/xml/System.Runtime.InteropServices/Marshal.xml index 8eeb08e3766..b12a702da24 100644 --- a/xml/System.Runtime.InteropServices/Marshal.xml +++ b/xml/System.Runtime.InteropServices/Marshal.xml @@ -277,7 +277,7 @@ ## Remarks > [!IMPORTANT] -> This native memory allocator is a legacy API that should be used exclusively when called for by specific Win32 APIs on the Windows platform. On .NET 6 and later, use the class on all platforms to allocate native memory. +> This native memory allocator is a legacy API that should be used exclusively when called for by specific Win32 APIs on the Windows platform. Use the class on all platforms to allocate native memory. is one of two memory allocation methods in the class. ( is the other.) This method exposes the Win32 [LocalAlloc](https://learn.microsoft.com/windows/win32/api/winbase/nf-winbase-localalloc) function from Kernel32.dll. @@ -353,7 +353,7 @@ ## Remarks > [!IMPORTANT] -> This native memory allocator is a legacy API that should be used exclusively when called for by specific Win32 APIs on the Windows platform. On .NET 6 and later versions, use the class on all platforms to allocate native memory. +> This native memory allocator is a legacy API that should be used exclusively when called for by specific Win32 APIs on the Windows platform. Use the class on all platforms to allocate native memory. is one of two memory allocation methods in the class. ( is the other.) This method exposes the Win32 [LocalAlloc](https://learn.microsoft.com/windows/win32/api/winbase/nf-winbase-localalloc) function from Kernel32.dll. @@ -2580,7 +2580,7 @@ ## Remarks > [!IMPORTANT] -> This native memory allocator is a legacy API that should be used exclusively when called for by specific Win32 APIs on the Windows platform. On .NET 6 and later versions, use the class on all platforms to allocate native memory. +> This native memory allocator is a legacy API that should be used exclusively when called for by specific Win32 APIs on the Windows platform. Use the class on all platforms to allocate native memory. You can use to free any memory from the global heap allocated by , , or any equivalent unmanaged API method. If the `hglobal` parameter is the method does nothing. @@ -4314,7 +4314,7 @@ You can use this method to obtain error codes only if you apply the , which is named to better reflect the intent of the API and its cross-platform nature. On .NET 6 and later versions, prefer over . +This method is functionally equivalent to , which is named to better reflect the intent of the API and its cross-platform nature. Prefer over . ## Examples The following example calls the `GetLastWin32Error` method. The example first demonstrates calling the method with no error present and then demonstrates calling the method with an error present. @@ -8052,7 +8052,7 @@ This method is functionally equivalent to [!IMPORTANT] -> This native memory allocator is a legacy API that should be used exclusively when called for by specific Win32 APIs on the Windows platform. For .NET 6 and later, use the class instead to allocate native memory. On earlier targets where is unavailable, continue to use the appropriate allocation APIs. +> This native memory allocator is a legacy API that should be used exclusively when called for by specific Win32 APIs on the Windows platform. Use the class instead to allocate native memory. is one of two memory reallocation API methods in the class. ( is the other.) diff --git a/xml/System.Runtime.InteropServices/NativeLibrary.xml b/xml/System.Runtime.InteropServices/NativeLibrary.xml index f19e56e5c6e..e7b8f7cc129 100644 --- a/xml/System.Runtime.InteropServices/NativeLibrary.xml +++ b/xml/System.Runtime.InteropServices/NativeLibrary.xml @@ -216,7 +216,7 @@ Calling this method with an invalid `handle` parameter other than on the calling assembly, if any are present, are used. This method does not invoke the resolver registered using -method. Starting with .NET 5, this method does invoke the method and the event. +method. This method invokes the method and the event. ]]> diff --git a/xml/System.Runtime.InteropServices/RuntimeInformation.xml b/xml/System.Runtime.InteropServices/RuntimeInformation.xml index 4432c56bce8..9246314720e 100644 --- a/xml/System.Runtime.InteropServices/RuntimeInformation.xml +++ b/xml/System.Runtime.InteropServices/RuntimeInformation.xml @@ -109,8 +109,7 @@ The property returns a string that indicates the name of the currently executing .NET implementation. The string starts with one of the following descriptions, usually followed by the current version: -- ".NET" (for .NET 5 and later versions) -- ".NET Core" (for .NET Core 1.0 - 3.1) +- ".NET" ]]> @@ -214,7 +213,7 @@ The property returns a string that indicates the name of the currently executing The returned value is intended to represent the actual architecture of the underlying operating system. It's a best effort to ignore the architecture emulation infrastructure that might be involved to run the process. The returned value takes into account emulation built into Windows and macOS operating systems. The returned value does not take into account emulation using QEMU that's typically used on Linux. > [!NOTE] -> The behavior of this property for emulated processes changed, starting in .NET 7. For more information, see [RuntimeInformation.OSArchitecture under emulation](/dotnet/core/compatibility/interop/7.0/osarchitecture-emulation). +> For more information about the behavior of this property for emulated processes, see [RuntimeInformation.OSArchitecture under emulation](/dotnet/core/compatibility/interop/7.0/osarchitecture-emulation). ]]> diff --git a/xml/System.Runtime.Loader/AssemblyLoadContext.xml b/xml/System.Runtime.Loader/AssemblyLoadContext.xml index 3610fd32473..66d74bed742 100644 --- a/xml/System.Runtime.Loader/AssemblyLoadContext.xml +++ b/xml/System.Runtime.Loader/AssemblyLoadContext.xml @@ -50,7 +50,6 @@ The exists primarily to provide > [!NOTE] > > * does not provide any security features. All code has full permissions of the process. -> * In .NET Core 2.0 - 2.2 only, is an abstract class. To create a concrete class in these versions, implement the method. ## Usage in the runtime diff --git a/xml/System.Runtime.Serialization.Formatters.Binary/BinaryFormatter.xml b/xml/System.Runtime.Serialization.Formatters.Binary/BinaryFormatter.xml index 41e1330ae68..9548b0f7f34 100644 --- a/xml/System.Runtime.Serialization.Formatters.Binary/BinaryFormatter.xml +++ b/xml/System.Runtime.Serialization.Formatters.Binary/BinaryFormatter.xml @@ -424,7 +424,7 @@ An error occurred while deserializing an object from the input stream. The property may contain more information about the root cause. The caller does not have the required permission. - ASP.NET Core 5-8: In all cases unless functionality is re-enabled in the project file. For more information, see Resolving BinaryFormatter obsoletion and disablement errors. + ASP.NET Core 8: In all cases unless functionality is re-enabled in the project file. For more information, see Resolving BinaryFormatter obsoletion and disablement errors. .NET 9 and later versions: In all cases. For more information, see BinaryFormatter migration guide. @@ -556,7 +556,7 @@ The property may contain more information abou The is null. An error has occurred during serialization, such as if an object in the parameter is not marked as serializable. The caller does not have the required permission. - ASP.NET Core 5-8: In all cases unless functionality is re-enabled in the project file. For more information, see Resolving BinaryFormatter obsoletion and disablement errors. + ASP.NET Core 8: In all cases unless functionality is re-enabled in the project file. For more information, see Resolving BinaryFormatter obsoletion and disablement errors. .NET 9 and later versions: In all cases. For more information, see BinaryFormatter migration guide. diff --git a/xml/System.Security.Authentication/SslProtocols.xml b/xml/System.Security.Authentication/SslProtocols.xml index 0741f1410f8..49ec232bc43 100644 --- a/xml/System.Security.Authentication/SslProtocols.xml +++ b/xml/System.Security.Authentication/SslProtocols.xml @@ -310,7 +310,7 @@ 192 - Specifies the TLS 1.0 security protocol. TLS 1.0 is provided for backward compatibility only. The TLS protocol is defined in IETF RFC 2246. This member is obsolete starting in .NET 7. + Specifies the TLS 1.0 security protocol. TLS 1.0 is provided for backward compatibility only. The TLS protocol is defined in IETF RFC 2246. This member is obsolete. @@ -356,7 +356,7 @@ 768 - Specifies the TLS 1.1 security protocol. The TLS protocol is defined in IETF RFC 4346. This member is obsolete starting in .NET 7. + Specifies the TLS 1.1 security protocol. The TLS protocol is defined in IETF RFC 4346. This member is obsolete. diff --git a/xml/System.Security.Cryptography/AesCng.xml b/xml/System.Security.Cryptography/AesCng.xml index f8de1dfa586..c5412d01b14 100644 --- a/xml/System.Security.Cryptography/AesCng.xml +++ b/xml/System.Security.Cryptography/AesCng.xml @@ -390,7 +390,7 @@ This method decrypts an encrypted message created using the - .NET 6 and later: CFB128 mode is selected and the key is persisted. + CFB128 mode is selected and the key is persisted. @@ -529,7 +529,7 @@ Use this method to encrypt a message and then use the - .NET 6 and later: CFB128 mode is selected and the key is persisted. + CFB128 mode is selected and the key is persisted. diff --git a/xml/System.Security.Cryptography/CryptoStream.xml b/xml/System.Security.Cryptography/CryptoStream.xml index d2138ab361c..4320e732b47 100644 --- a/xml/System.Security.Cryptography/CryptoStream.xml +++ b/xml/System.Security.Cryptography/CryptoStream.xml @@ -1343,7 +1343,7 @@ This property exists only to support inheritance from , a The maximum number of bytes to be read from the current stream. Reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read. The total number of bytes read into the buffer. This can be less than the number of bytes requested if that many bytes are not currently available, or zero if the end of the stream has been reached. - Starting in .NET 6, this method might not read as many bytes as were requested. For more information, see Partial and zero-byte reads in DeflateStream, GZipStream, and CryptoStream. + This method might not read as many bytes as were requested. For more information, see Partial and zero-byte reads in DeflateStream, GZipStream, and CryptoStream. The associated with current object does not match the underlying stream. For example, this exception is thrown when using with an underlying stream that is write only. or is less than zero. @@ -1390,7 +1390,7 @@ This property exists only to support inheritance from , a The token to monitor for cancellation requests. The default value is . Asynchronously reads a sequence of bytes from the current stream, advances the position within the stream by the number of bytes read, and monitors cancellation requests. A task that represents the asynchronous read operation. The value of its property contains the total number of bytes read into the buffer. The result value can be less than the number of bytes allocated in the buffer if that many bytes are not currently available, or it can be 0 (zero) if the end of the stream has been reached. - Starting in .NET 6, this method might not read as many bytes as were requested. For more information, see Partial and zero-byte reads in DeflateStream, GZipStream, and CryptoStream. + This method might not read as many bytes as were requested. For more information, see Partial and zero-byte reads in DeflateStream, GZipStream, and CryptoStream. The associated with the current object does not match the underlying stream. For example, this exception is thrown when using with an underlying stream that's write only. The cancellation token was canceled. This exception is stored into the returned task. @@ -1451,7 +1451,7 @@ This property exists only to support inheritance from , a [!IMPORTANT] -> Starting in .NET 6, this method might not read as many bytes as were requested. For more information, see [Partial and zero-byte reads in DeflateStream, GZipStream, and CryptoStream](/dotnet/core/compatibility/core-libraries/6.0/partial-byte-reads-in-streams). +> This method might not read as many bytes as were requested. For more information, see [Partial and zero-byte reads in DeflateStream, GZipStream, and CryptoStream](/dotnet/core/compatibility/core-libraries/6.0/partial-byte-reads-in-streams). You must preface your call to with the `await` (C#) or `Await` (Visual Basic) operator to suspend execution of the method until the task is complete. For more information, see [Asynchronous programming (C#)](/dotnet/csharp/asynchronous-programming/) or [Asynchronous programming with Async and Await (Visual Basic)](/dotnet/visual-basic/programming-guide/concepts/async/). diff --git a/xml/System.Security.Cryptography/FromBase64Transform.xml b/xml/System.Security.Cryptography/FromBase64Transform.xml index 959c531303e..be0f3ca3124 100644 --- a/xml/System.Security.Cryptography/FromBase64Transform.xml +++ b/xml/System.Security.Cryptography/FromBase64Transform.xml @@ -284,8 +284,7 @@ Gets a value that indicates whether multiple blocks can be transformed. A value that indicates whether multiple blocks can be transformed. - Prior to .NET 5, only one block can be transformed at a time, so this property returns . - Starting in .NET 5, multiple blocks can be transformed, so this property returns . + Multiple blocks can be transformed, so this property returns . Cryptographic Services diff --git a/xml/System.Security.Cryptography/Oid.xml b/xml/System.Security.Cryptography/Oid.xml index 384363b3f4b..3a690ab1fc4 100644 --- a/xml/System.Security.Cryptography/Oid.xml +++ b/xml/System.Security.Cryptography/Oid.xml @@ -362,7 +362,7 @@ If one property is set to a known value, the value of the other property is updated automatically to a corresponding value. For example, if the property is set to "Secure Email", the property is set automatically to "1.3.6.1.5.5.7.3.4". -In .NET 5 and later versions, this property is *init only*, meaning that its value can't be changed once it's been set. +This property is *init only*, meaning that its value can't be changed once it's been set. ## Examples The following code example shows how to use the class. @@ -372,7 +372,7 @@ In .NET 5 and later versions, this property is *init only*, meaning that its val ]]> - .NET 5 and later: An attempt is made to set the value and the value has previously been set. + An attempt is made to set the value and the value has previously been set. @@ -531,7 +531,7 @@ In .NET 5 and later versions, this property is *init only*, meaning that its val If one property is set to a known value, the value of the other property is updated automatically to a corresponding value. For example, if the property is set to "1.3.6.1.5.5.7.3.4", the property is set automatically to "Secure Email". -In .NET 5 and later versions, this property is *init only*, meaning that its value can't be changed once it's been set. +This property is *init only*, meaning that its value can't be changed once it's been set. ## Examples The following code example shows how to use the class. @@ -541,7 +541,7 @@ In .NET 5 and later versions, this property is *init only*, meaning that its val ]]> - .NET 5 and later: An attempt is made to set the value and the value has previously been set. + An attempt is made to set the value and the value has previously been set. diff --git a/xml/System.Security.Cryptography/TripleDESCng.xml b/xml/System.Security.Cryptography/TripleDESCng.xml index 29c7b4ab347..2dea1c94b9f 100644 --- a/xml/System.Security.Cryptography/TripleDESCng.xml +++ b/xml/System.Security.Cryptography/TripleDESCng.xml @@ -358,7 +358,7 @@ ]]> - .NET 6 and later: CFB64 mode is selected and the key is persisted. + CFB64 mode is selected and the key is persisted. @@ -496,7 +496,7 @@ ]]> - .NET 6 and later: CFB64 mode is selected and the key is persisted. + CFB64 mode is selected and the key is persisted. diff --git a/xml/System.Text.Json.Serialization/JsonIncludeAttribute.xml b/xml/System.Text.Json.Serialization/JsonIncludeAttribute.xml index fd424a5626a..2b023d69f9b 100644 --- a/xml/System.Text.Json.Serialization/JsonIncludeAttribute.xml +++ b/xml/System.Text.Json.Serialization/JsonIncludeAttribute.xml @@ -43,7 +43,6 @@ When applied to a property, this attribute indicates that non-public *getters* a > - `protected`, `protected internal`, or `private protected` when the generated context is in a class that derives from the type. > - `private` if the type is nested in the same class as the generated context. -In .NET 6 and .NET 7, non-public properties aren't supported. ]]> diff --git a/xml/System.Text.Json/Utf8JsonReader.xml b/xml/System.Text.Json/Utf8JsonReader.xml index 3b1505f769e..fa33b9a89ec 100644 --- a/xml/System.Text.Json/Utf8JsonReader.xml +++ b/xml/System.Text.Json/Utf8JsonReader.xml @@ -1025,7 +1025,7 @@ The JSON token value represents a number less than argument's property is greater than 4294967294 on .NET 6 and later versions, or Int32.MaxValue on all previous versions. + The argument's property is greater than 4294967294. @@ -2952,7 +2952,7 @@ Task t Status: RanToCompletion, Result: 42 -or- - The argument's property is greater than 4294967294 on .NET 6 and later versions, or Int32.MaxValue on all previous versions. + The argument's property is greater than 4294967294. The task has been canceled. This exception is stored into the returned task. The provided has already been disposed. The task has been canceled. @@ -3598,7 +3598,7 @@ This method creates a object whose property. -Starting in .NET 6, for some `TResult` types and some result values, this method may return a cached singleton object rather than allocating a new object. +For some `TResult` types and some result values, this method might return a cached singleton object rather than allocating a new object. ## Examples The following example is a command-line utility that calculates the number of bytes in the files in each directory whose name is passed as a command-line argument. Rather than executing a longer code path that instantiates a object and retrieves the value of its property for each file in the directory, the example simply calls the method to create a task whose property is zero (0) if a directory has no files. diff --git a/xml/System.Threading/ReaderWriterLockSlim.xml b/xml/System.Threading/ReaderWriterLockSlim.xml index d7f185c9b87..46921b8329a 100644 --- a/xml/System.Threading/ReaderWriterLockSlim.xml +++ b/xml/System.Threading/ReaderWriterLockSlim.xml @@ -58,7 +58,7 @@ Use to protect a resource that is r > [!NOTE] > > - is similar to , but it has simplified rules for recursion and for upgrading and downgrading lock state. avoids many cases of potential deadlock. In addition, the performance of is significantly better than . is recommended for all new development. -> - is not thread-abort safe. You should not use it in an environment where threads accessing it can be aborted, such as .NET Framework. If you're using .NET Core or .NET 5+, it should be fine. is not supported in .NET Core and [is obsolete](/dotnet/core/compatibility/core-libraries/5.0/thread-abort-obsolete) in .NET 5 and later versions. +> - is not thread-abort safe. You shouldn't use it in an environment where threads accessing it can be aborted, such as .NET Framework. isn't supported in .NET. By default, new instances of are created with the flag and do not allow recursion. This default policy is recommended for all new development, because recursion introduces unnecessary complications and makes your code more prone to deadlocks. To simplify migration from existing projects that use or , you can use the flag to create instances of that allow recursion. From a7accb1f44a6db943907acfe3e104d43fef8ec62 Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Mon, 6 Jul 2026 21:11:07 -0700 Subject: [PATCH 2/4] Apply suggestions from code review Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com> --- .../RuntimeInformation.xml | 3 +- .../BinaryFormatter.xml | 4 +- .../JsonIncludeAttribute.xml | 1 - xml/System.Text.Json/Utf8JsonWriter.xml | 50 ++++--------------- xml/System.Threading/ReaderWriterLockSlim.xml | 4 +- 5 files changed, 15 insertions(+), 47 deletions(-) diff --git a/xml/System.Runtime.InteropServices/RuntimeInformation.xml b/xml/System.Runtime.InteropServices/RuntimeInformation.xml index 9246314720e..2224957bfd7 100644 --- a/xml/System.Runtime.InteropServices/RuntimeInformation.xml +++ b/xml/System.Runtime.InteropServices/RuntimeInformation.xml @@ -109,7 +109,8 @@ The property returns a string that indicates the name of the currently executing .NET implementation. The string starts with one of the following descriptions, usually followed by the current version: -- ".NET" +- ".NET" (for .NET 5 and later versions) +- ".NET Core" (for .NET Core 1.0 - 3.1) ]]> diff --git a/xml/System.Runtime.Serialization.Formatters.Binary/BinaryFormatter.xml b/xml/System.Runtime.Serialization.Formatters.Binary/BinaryFormatter.xml index 9548b0f7f34..41e1330ae68 100644 --- a/xml/System.Runtime.Serialization.Formatters.Binary/BinaryFormatter.xml +++ b/xml/System.Runtime.Serialization.Formatters.Binary/BinaryFormatter.xml @@ -424,7 +424,7 @@ An error occurred while deserializing an object from the input stream. The property may contain more information about the root cause. The caller does not have the required permission. - ASP.NET Core 8: In all cases unless functionality is re-enabled in the project file. For more information, see Resolving BinaryFormatter obsoletion and disablement errors. + ASP.NET Core 5-8: In all cases unless functionality is re-enabled in the project file. For more information, see Resolving BinaryFormatter obsoletion and disablement errors. .NET 9 and later versions: In all cases. For more information, see BinaryFormatter migration guide. @@ -556,7 +556,7 @@ The property may contain more information abou The is null. An error has occurred during serialization, such as if an object in the parameter is not marked as serializable. The caller does not have the required permission. - ASP.NET Core 8: In all cases unless functionality is re-enabled in the project file. For more information, see Resolving BinaryFormatter obsoletion and disablement errors. + ASP.NET Core 5-8: In all cases unless functionality is re-enabled in the project file. For more information, see Resolving BinaryFormatter obsoletion and disablement errors. .NET 9 and later versions: In all cases. For more information, see BinaryFormatter migration guide. diff --git a/xml/System.Text.Json.Serialization/JsonIncludeAttribute.xml b/xml/System.Text.Json.Serialization/JsonIncludeAttribute.xml index 2b023d69f9b..6b7b4339c12 100644 --- a/xml/System.Text.Json.Serialization/JsonIncludeAttribute.xml +++ b/xml/System.Text.Json.Serialization/JsonIncludeAttribute.xml @@ -43,7 +43,6 @@ When applied to a property, this attribute indicates that non-public *getters* a > - `protected`, `protected internal`, or `private protected` when the generated context is in a class that derives from the type. > - `private` if the type is nested in the same class as the generated context. - ]]> diff --git a/xml/System.Text.Json/Utf8JsonWriter.xml b/xml/System.Text.Json/Utf8JsonWriter.xml index 9d77c2faec7..9dd635f3fc1 100644 --- a/xml/System.Text.Json/Utf8JsonWriter.xml +++ b/xml/System.Text.Json/Utf8JsonWriter.xml @@ -1596,10 +1596,7 @@ The property name is escaped before writing. ## Remarks -This method writes the value using the following format: - -- The default (that is, 'G'). -- 'G17' on .NET Framework. +This method writes the value using the default (that is, 'G'). The property name is escaped before writing. @@ -1737,10 +1734,7 @@ The property name is escaped before writing. ## Remarks -This method writes the value using the following format: - -- The default (that is, 'G'). -- 'G9' on .NET Framework. +This method writes the value using the default (that is, 'G'). The property name is escaped before writing. @@ -1936,10 +1930,7 @@ The property name is escaped before writing. ## Remarks -This method writes the value using the following format: - -- The default (that is, 'G'). -- 'G17' on .NET Framework. +This method writes the value using the default (that is, 'G'). The property name is escaped before writing. @@ -2077,10 +2068,7 @@ The property name is escaped before writing. ## Remarks -This method writes the value using the following format: - -- The default (that is, 'G'). -- 'G9' on .NET Framework. +This method writes the value using the default (that is, 'G'). The property name is escaped before writing. @@ -2277,10 +2265,7 @@ The property name is escaped before writing. ## Remarks -This method writes the value using the following format: - -- The default (that is, 'G'). -- 'G17' on .NET Framework. +This method writes the value using the default (that is, 'G'). The property name is escaped before writing. @@ -2421,10 +2406,7 @@ The property name is escaped before writing. ## Remarks -This method writes the value using the following format: - -- The default (that is, 'G'). -- 'G9' on .NET Framework. +This method writes the value using the default (that is, 'G'). The property name is escaped before writing. @@ -2622,10 +2604,7 @@ The property name should already be escaped when the instance of value using the following format: - -- The default (that is, 'G'). -- 'G17' on .NET Framework. +This method writes the value using the default (that is, 'G'). The property name should already be escaped when the instance of was created. @@ -2760,10 +2739,7 @@ The property name should already be escaped when the instance of value using the following format: - -- The default (that is, 'G'). -- 'G9' on .NET Framework. +This method writes the value using the default (that is, 'G'). The property name should already be escaped when the instance of was created. @@ -2954,10 +2930,7 @@ This method writes the value using the default value using the following format: - -- The default (that is, 'G'). -- 'G17' on .NET Framework. +This method writes the value using the default (that is, 'G'). ]]> @@ -3080,10 +3053,7 @@ This method writes the value using the default value using the following format: - -- The default (that is, 'G'). -- 'G9' on .NET Framework. +This method writes the value using the default (that is, 'G'). ]]> diff --git a/xml/System.Threading/ReaderWriterLockSlim.xml b/xml/System.Threading/ReaderWriterLockSlim.xml index 46921b8329a..4664add4995 100644 --- a/xml/System.Threading/ReaderWriterLockSlim.xml +++ b/xml/System.Threading/ReaderWriterLockSlim.xml @@ -56,9 +56,7 @@ Use to protect a resource that is read by multiple threads and written to by one thread at a time. allows multiple threads to be in read mode, allows one thread to be in write mode with exclusive ownership of the lock, and allows one thread that has read access to be in upgradeable read mode, from which the thread can upgrade to write mode without having to relinquish its read access to the resource. > [!NOTE] -> -> - is similar to , but it has simplified rules for recursion and for upgrading and downgrading lock state. avoids many cases of potential deadlock. In addition, the performance of is significantly better than . is recommended for all new development. -> - is not thread-abort safe. You shouldn't use it in an environment where threads accessing it can be aborted, such as .NET Framework. isn't supported in .NET. +> is similar to , but it has simplified rules for recursion and for upgrading and downgrading lock state. avoids many cases of potential deadlock. In addition, the performance of is significantly better than . is recommended for all new development. By default, new instances of are created with the flag and do not allow recursion. This default policy is recommended for all new development, because recursion introduces unnecessary complications and makes your code more prone to deadlocks. To simplify migration from existing projects that use or , you can use the flag to create instances of that allow recursion. From b81f9af5b527e7e4a3a11b93d5661919b1daae0c Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Tue, 7 Jul 2026 13:53:56 -0700 Subject: [PATCH 3/4] Update xml/System.Reflection/IReflect.xml --- xml/System.Reflection/IReflect.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xml/System.Reflection/IReflect.xml b/xml/System.Reflection/IReflect.xml index d4ff2cff086..b20ee9d6c07 100644 --- a/xml/System.Reflection/IReflect.xml +++ b/xml/System.Reflection/IReflect.xml @@ -50,7 +50,7 @@ In .NET 10 and later versions, no COM object casts successfully to this interface. If you need access, it's recommended to project and define a managed definition of `IDispatch` or `IDispatchEx`. -In .NET 8 and .NET 9, COM objects that implement `IDispatchEx` can be cast to this interface, but all methods throw `TypeLoadException`. +In .NET 5 through .NET 9, COM objects that implement `IDispatchEx` can be cast to this interface, but all methods throw `TypeLoadException`. ]]> From 55d39da6532571a6bc1c6a86dbf4ddd754d8239a Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Tue, 7 Jul 2026 14:01:19 -0700 Subject: [PATCH 4/4] remove .net framework from table --- xml/System.Text/Encoding.xml | 286 +++++++++++++++++------------------ 1 file changed, 143 insertions(+), 143 deletions(-) diff --git a/xml/System.Text/Encoding.xml b/xml/System.Text/Encoding.xml index b2a5ae5bad2..48ac07b6e9b 100644 --- a/xml/System.Text/Encoding.xml +++ b/xml/System.Text/Encoding.xml @@ -102,153 +102,153 @@ Use the method to obtain other encoding ## List of encodings -The following table lists the encodings supported by .NET. It lists each encoding's code page number and the values of the encoding's and properties. A check mark in the **.NET Framework support** or **.NET support** column indicates that the code page is natively supported by that .NET implementation, regardless of the underlying platform. For .NET Framework, the availability of other encodings listed in the table depends on the operating system. For .NET, other encodings are available by using the class or by deriving from the class. +The following table lists the encodings supported by .NET. It lists each encoding's code page number and the values of the encoding's and properties. A check mark in the **.NET support** column indicates that the code page is natively supported by .NET, regardless of the underlying platform.Other encodings are available by using the class or by deriving from the class. > [!NOTE] > Code pages whose property corresponds to an international standard do not necessarily comply in full with that standard. -|Code page|Name|Display name|.NET Framework support|.NET support| -|---------|----|------------|----------------------|------------| -|37|IBM037|IBM EBCDIC (US-Canada)||| -|437|IBM437|OEM United States||| -|500|IBM500|IBM EBCDIC (International)||| -|708|ASMO-708|Arabic (ASMO 708)||| -|720|DOS-720|Arabic (DOS)||| -|737|ibm737|Greek (DOS)||| -|775|ibm775|Baltic (DOS)||| -|850|ibm850|Western European (DOS)||| -|852|ibm852|Central European (DOS)||| -|855|IBM855|OEM Cyrillic||| -|857|ibm857|Turkish (DOS)||| -|858|IBM00858|OEM Multilingual Latin I||| -|860|IBM860|Portuguese (DOS)||| -|861|ibm861|Icelandic (DOS)||| -|862|DOS-862|Hebrew (DOS)||| -|863|IBM863|French Canadian (DOS)||| -|864|IBM864|Arabic (864)||| -|865|IBM865|Nordic (DOS)||| -|866|cp866|Cyrillic (DOS)||| -|869|ibm869|Greek, Modern (DOS)||| -|870|IBM870|IBM EBCDIC (Multilingual Latin-2)||| -|874|windows-874|Thai (Windows)||| -|875|cp875|IBM EBCDIC (Greek Modern)||| -|932|shift_jis|Japanese (Shift-JIS)||| -|936|gb2312|Chinese Simplified (GB2312)|✓|| -|949|ks_c_5601-1987|Korean||| -|950|big5|Chinese Traditional (Big5)||| -|1026|IBM1026|IBM EBCDIC (Turkish Latin-5)||| -|1047|IBM01047|IBM Latin-1||| -|1140|IBM01140|IBM EBCDIC (US-Canada-Euro)||| -|1141|IBM01141|IBM EBCDIC (Germany-Euro)||| -|1142|IBM01142|IBM EBCDIC (Denmark-Norway-Euro)||| -|1143|IBM01143|IBM EBCDIC (Finland-Sweden-Euro)||| -|1144|IBM01144|IBM EBCDIC (Italy-Euro)||| -|1145|IBM01145|IBM EBCDIC (Spain-Euro)||| -|1146|IBM01146|IBM EBCDIC (UK-Euro)||| -|1147|IBM01147|IBM EBCDIC (France-Euro)||| -|1148|IBM01148|IBM EBCDIC (International-Euro)||| -|1149|IBM01149|IBM EBCDIC (Icelandic-Euro)||| -|1200|utf-16|Unicode|✓|✓| -|1201|unicodeFFFE|Unicode (Big endian)|✓|✓| -|1250|windows-1250|Central European (Windows)||| -|1251|windows-1251|Cyrillic (Windows)||| -|1252|Windows-1252|Western European (Windows)|✓|| -|1253|windows-1253|Greek (Windows)||| -|1254|windows-1254|Turkish (Windows)||| -|1255|windows-1255|Hebrew (Windows)||| -|1256|windows-1256|Arabic (Windows)||| -|1257|windows-1257|Baltic (Windows)||| -|1258|windows-1258|Vietnamese (Windows)||| -|1361|Johab|Korean (Johab)||| -|10000|macintosh|Western European (Mac)||| -|10001|x-mac-japanese|Japanese (Mac)||| -|10002|x-mac-chinesetrad|Chinese Traditional (Mac)||| -|10003|x-mac-korean|Korean (Mac)|✓|| -|10004|x-mac-arabic|Arabic (Mac)||| -|10005|x-mac-hebrew|Hebrew (Mac)||| -|10006|x-mac-greek|Greek (Mac)||| -|10007|x-mac-cyrillic|Cyrillic (Mac)||| -|10008|x-mac-chinesesimp|Chinese Simplified (Mac)|✓|| -|10010|x-mac-romanian|Romanian (Mac)||| -|10017|x-mac-ukrainian|Ukrainian (Mac)||| -|10021|x-mac-thai|Thai (Mac)||| -|10029|x-mac-ce|Central European (Mac)||| -|10079|x-mac-icelandic|Icelandic (Mac)||| -|10081|x-mac-turkish|Turkish (Mac)||| -|10082|x-mac-croatian|Croatian (Mac)||| -|12000|utf-32|Unicode (UTF-32)|✓|✓| -|12001|utf-32BE|Unicode (UTF-32 Big endian)|✓|✓| -|20000|x-Chinese-CNS|Chinese Traditional (CNS)||| -|20001|x-cp20001|TCA Taiwan||| -|20002|x-Chinese-Eten|Chinese Traditional (Eten)||| -|20003|x-cp20003|IBM5550 Taiwan||| -|20004|x-cp20004|TeleText Taiwan||| -|20005|x-cp20005|Wang Taiwan||| -|20105|x-IA5|Western European (IA5)||| -|20106|x-IA5-German|German (IA5)||| -|20107|x-IA5-Swedish|Swedish (IA5)||| -|20108|x-IA5-Norwegian|Norwegian (IA5)||| -|20127|us-ascii|US-ASCII|✓|✓| -|20261|x-cp20261|T.61||| -|20269|x-cp20269|ISO-6937||| -|20273|IBM273|IBM EBCDIC (Germany)||| -|20277|IBM277|IBM EBCDIC (Denmark-Norway)||| -|20278|IBM278|IBM EBCDIC (Finland-Sweden)||| -|20280|IBM280|IBM EBCDIC (Italy)||| -|20284|IBM284|IBM EBCDIC (Spain)||| -|20285|IBM285|IBM EBCDIC (UK)||| -|20290|IBM290|IBM EBCDIC (Japanese katakana)||| -|20297|IBM297|IBM EBCDIC (France)||| -|20420|IBM420|IBM EBCDIC (Arabic)||| -|20423|IBM423|IBM EBCDIC (Greek)||| -|20424|IBM424|IBM EBCDIC (Hebrew)||| -|20833|x-EBCDIC-KoreanExtended|IBM EBCDIC (Korean Extended)||| -|20838|IBM-Thai|IBM EBCDIC (Thai)||| -|20866|koi8-r|Cyrillic (KOI8-R)||| -|20871|IBM871|IBM EBCDIC (Icelandic)||| -|20880|IBM880|IBM EBCDIC (Cyrillic Russian)||| -|20905|IBM905|IBM EBCDIC (Turkish)||| -|20924|IBM00924|IBM Latin-1||| -|20932|EUC-JP|Japanese (JIS 0208-1990 and 0212-1990)||| -|20936|x-cp20936|Chinese Simplified (GB2312-80)|✓|| -|20949|x-cp20949|Korean Wansung|✓|| -|21025|cp1025|IBM EBCDIC (Cyrillic Serbian-Bulgarian)||| -|21866|koi8-u|Cyrillic (KOI8-U)||| -|28591|iso-8859-1|Western European (ISO)|✓|✓| -|28592|iso-8859-2|Central European (ISO)||| -|28593|iso-8859-3|Latin 3 (ISO)||| -|28594|iso-8859-4|Baltic (ISO)||| -|28595|iso-8859-5|Cyrillic (ISO)||| -|28596|iso-8859-6|Arabic (ISO)||| -|28597|iso-8859-7|Greek (ISO)||| -|28598|iso-8859-8|Hebrew (ISO-Visual)|✓|| -|28599|iso-8859-9|Turkish (ISO)||| -|28603|iso-8859-13|Estonian (ISO)||| -|28605|iso-8859-15|Latin 9 (ISO)||| -|29001|x-Europa|Europa||| -|38598|iso-8859-8-i|Hebrew (ISO-Logical)|✓|| -|50220|iso-2022-jp|Japanese (JIS)|✓|| -|50221|csISO2022JP|Japanese (JIS-Allow 1 byte Kana)|✓|| -|50222|iso-2022-jp|Japanese (JIS-Allow 1 byte Kana - SO/SI)|✓|| -|50225|iso-2022-kr|Korean (ISO)|✓|| -|50227|x-cp50227|Chinese Simplified (ISO-2022)|✓|| -|51932|euc-jp|Japanese (EUC)|✓|| -|51936|EUC-CN|Chinese Simplified (EUC)|✓|| -|51949|euc-kr|Korean (EUC)|✓|| -|52936|hz-gb-2312|Chinese Simplified (HZ)|✓|| -|54936|GB18030|Chinese Simplified (GB18030)|✓|| -|57002|x-iscii-de|ISCII Devanagari|✓|| -|57003|x-iscii-be|ISCII Bengali|✓|| -|57004|x-iscii-ta|ISCII Tamil|✓|| -|57005|x-iscii-te|ISCII Telugu|✓|| -|57006|x-iscii-as|ISCII Assamese|✓|| -|57007|x-iscii-or|ISCII Oriya|✓|| -|57008|x-iscii-ka|ISCII Kannada|✓|| -|57009|x-iscii-ma|ISCII Malayalam|✓|| -|57010|x-iscii-gu|ISCII Gujarati|✓|| -|57011|x-iscii-pa|ISCII Punjabi|✓|| -|65000|utf-7|Unicode (UTF-7)|✓|| -|65001|utf-8|Unicode (UTF-8)|✓|✓| +| Code page | Name | Display name | .NET support | +|-----------|-------------------------|------------------------------------------|--------------| +| 37 | IBM037 | IBM EBCDIC (US-Canada) | | +| 437 | IBM437 | OEM United States | | +| 500 | IBM500 | IBM EBCDIC (International) | | +| 708 | ASMO-708 | Arabic (ASMO 708) | | +| 720 | DOS-720 | Arabic (DOS) | | +| 737 | ibm737 | Greek (DOS) | | +| 775 | ibm775 | Baltic (DOS) | | +| 850 | ibm850 | Western European (DOS) | | +| 852 | ibm852 | Central European (DOS) | | +| 855 | IBM855 | OEM Cyrillic | | +| 857 | ibm857 | Turkish (DOS) | | +| 858 | IBM00858 | OEM Multilingual Latin I | | +| 860 | IBM860 | Portuguese (DOS) | | +| 861 | ibm861 | Icelandic (DOS) | | +| 862 | DOS-862 | Hebrew (DOS) | | +| 863 | IBM863 | French Canadian (DOS) | | +| 864 | IBM864 | Arabic (864) | | +| 865 | IBM865 | Nordic (DOS) | | +| 866 | cp866 | Cyrillic (DOS) | | +| 869 | ibm869 | Greek, Modern (DOS) | | +| 870 | IBM870 | IBM EBCDIC (Multilingual Latin-2) | | +| 874 | windows-874 | Thai (Windows) | | +| 875 | cp875 | IBM EBCDIC (Greek Modern) | | +| 932 | shift_jis | Japanese (Shift-JIS) | | +| 936 | gb2312 | Chinese Simplified (GB2312) | ✓ | +| 949 | ks_c_5601-1987 | Korean | | +| 950 | big5 | Chinese Traditional (Big5) | | +| 1026 | IBM1026 | IBM EBCDIC (Turkish Latin-5) | | +| 1047 | IBM01047 | IBM Latin-1 | | +| 1140 | IBM01140 | IBM EBCDIC (US-Canada-Euro) | | +| 1141 | IBM01141 | IBM EBCDIC (Germany-Euro) | | +| 1142 | IBM01142 | IBM EBCDIC (Denmark-Norway-Euro) | | +| 1143 | IBM01143 | IBM EBCDIC (Finland-Sweden-Euro) | | +| 1144 | IBM01144 | IBM EBCDIC (Italy-Euro) | | +| 1145 | IBM01145 | IBM EBCDIC (Spain-Euro) | | +| 1146 | IBM01146 | IBM EBCDIC (UK-Euro) | | +| 1147 | IBM01147 | IBM EBCDIC (France-Euro) | | +| 1148 | IBM01148 | IBM EBCDIC (International-Euro) | | +| 1149 | IBM01149 | IBM EBCDIC (Icelandic-Euro) | | +| 1200 | utf-16 | Unicode | ✓ | +| 1201 | unicodeFFFE | Unicode (Big endian) | ✓ | +| 1250 | windows-1250 | Central European (Windows) | | +| 1251 | windows-1251 | Cyrillic (Windows) | | +| 1252 | Windows-1252 | Western European (Windows) | | +| 1253 | windows-1253 | Greek (Windows) | | +| 1254 | windows-1254 | Turkish (Windows) | | +| 1255 | windows-1255 | Hebrew (Windows) | | +| 1256 | windows-1256 | Arabic (Windows) | | +| 1257 | windows-1257 | Baltic (Windows) | | +| 1258 | windows-1258 | Vietnamese (Windows) | | +| 1361 | Johab | Korean (Johab) | | +| 10000 | macintosh | Western European (Mac) | | +| 10001 | x-mac-japanese | Japanese (Mac) | | +| 10002 | x-mac-chinesetrad | Chinese Traditional (Mac) | | +| 10003 | x-mac-korean | Korean (Mac) | | +| 10004 | x-mac-arabic | Arabic (Mac) | | +| 10005 | x-mac-hebrew | Hebrew (Mac) | | +| 10006 | x-mac-greek | Greek (Mac) | | +| 10007 | x-mac-cyrillic | Cyrillic (Mac) | | +| 10008 | x-mac-chinesesimp | Chinese Simplified (Mac) | | +| 10010 | x-mac-romanian | Romanian (Mac) | | +| 10017 | x-mac-ukrainian | Ukrainian (Mac) | | +| 10021 | x-mac-thai | Thai (Mac) | | +| 10029 | x-mac-ce | Central European (Mac) | | +| 10079 | x-mac-icelandic | Icelandic (Mac) | | +| 10081 | x-mac-turkish | Turkish (Mac) | | +| 10082 | x-mac-croatian | Croatian (Mac) | | +| 12000 | utf-32 | Unicode (UTF-32) | ✓ | +| 12001 | utf-32BE | Unicode (UTF-32 Big endian) | ✓ | +| 20000 | x-Chinese-CNS | Chinese Traditional (CNS) | | +| 20001 | x-cp20001 | TCA Taiwan | | +| 20002 | x-Chinese-Eten | Chinese Traditional (Eten) | | +| 20003 | x-cp20003 | IBM5550 Taiwan | | +| 20004 | x-cp20004 | TeleText Taiwan | | +| 20005 | x-cp20005 | Wang Taiwan | | +| 20105 | x-IA5 | Western European (IA5) | | +| 20106 | x-IA5-German | German (IA5) | | +| 20107 | x-IA5-Swedish | Swedish (IA5) | | +| 20108 | x-IA5-Norwegian | Norwegian (IA5) | | +| 20127 | us-ascii | US-ASCII | ✓ | +| 20261 | x-cp20261 | T.61 | | +| 20269 | x-cp20269 | ISO-6937 | | +| 20273 | IBM273 | IBM EBCDIC (Germany) | | +| 20277 | IBM277 | IBM EBCDIC (Denmark-Norway) | | +| 20278 | IBM278 | IBM EBCDIC (Finland-Sweden) | | +| 20280 | IBM280 | IBM EBCDIC (Italy) | | +| 20284 | IBM284 | IBM EBCDIC (Spain) | | +| 20285 | IBM285 | IBM EBCDIC (UK) | | +| 20290 | IBM290 | IBM EBCDIC (Japanese katakana) | | +| 20297 | IBM297 | IBM EBCDIC (France) | | +| 20420 | IBM420 | IBM EBCDIC (Arabic) | | +| 20423 | IBM423 | IBM EBCDIC (Greek) | | +| 20424 | IBM424 | IBM EBCDIC (Hebrew) | | +| 20833 | x-EBCDIC-KoreanExtended | IBM EBCDIC (Korean Extended) | | +| 20838 | IBM-Thai | IBM EBCDIC (Thai) | | +| 20866 | koi8-r | Cyrillic (KOI8-R) | | +| 20871 | IBM871 | IBM EBCDIC (Icelandic) | | +| 20880 | IBM880 | IBM EBCDIC (Cyrillic Russian) | | +| 20905 | IBM905 | IBM EBCDIC (Turkish) | | +| 20924 | IBM00924 | IBM Latin-1 | | +| 20932 | EUC-JP | Japanese (JIS 0208-1990 and 0212-1990) | | +| 20936 | x-cp20936 | Chinese Simplified (GB2312-80) | | +| 20949 | x-cp20949 | Korean Wansung | | +| 21025 | cp1025 | IBM EBCDIC (Cyrillic Serbian-Bulgarian) | | +| 21866 | koi8-u | Cyrillic (KOI8-U) | | +| 28591 | iso-8859-1 | Western European (ISO) | ✓ | +| 28592 | iso-8859-2 | Central European (ISO) | | +| 28593 | iso-8859-3 | Latin 3 (ISO) | | +| 28594 | iso-8859-4 | Baltic (ISO) | | +| 28595 | iso-8859-5 | Cyrillic (ISO) | | +| 28596 | iso-8859-6 | Arabic (ISO) | | +| 28597 | iso-8859-7 | Greek (ISO) | | +| 28598 | iso-8859-8 | Hebrew (ISO-Visual) | | +| 28599 | iso-8859-9 | Turkish (ISO) | | +| 28603 | iso-8859-13 | Estonian (ISO) | | +| 28605 | iso-8859-15 | Latin 9 (ISO) | | +| 29001 | x-Europa | Europa | | +| 38598 | iso-8859-8-i | Hebrew (ISO-Logical) | | +| 50220 | iso-2022-jp | Japanese (JIS) | ✓ | +| 50221 | csISO2022JP | Japanese (JIS-Allow 1 byte Kana) | ✓ | +| 50222 | iso-2022-jp | Japanese (JIS-Allow 1 byte Kana - SO/SI) | ✓ | +| 50225 | iso-2022-kr | Korean (ISO) | ✓ | +| 50227 | x-cp50227 | Chinese Simplified (ISO-2022) | ✓ | +| 51932 | euc-jp | Japanese (EUC) | ✓ | +| 51936 | EUC-CN | Chinese Simplified (EUC) | ✓ | +| 51949 | euc-kr | Korean (EUC) | ✓ | +| 52936 | hz-gb-2312 | Chinese Simplified (HZ) | ✓ | +| 54936 | GB18030 | Chinese Simplified (GB18030) | ✓ | +| 57002 | x-iscii-de | ISCII Devanagari | ✓ | +| 57003 | x-iscii-be | ISCII Bengali | ✓ | +| 57004 | x-iscii-ta | ISCII Tamil | ✓ | +| 57005 | x-iscii-te | ISCII Telugu | ✓ | +| 57006 | x-iscii-as | ISCII Assamese | ✓ | +| 57007 | x-iscii-or | ISCII Oriya | ✓ | +| 57008 | x-iscii-ka | ISCII Kannada | ✓ | +| 57009 | x-iscii-ma | ISCII Malayalam | ✓ | +| 57010 | x-iscii-gu | ISCII Gujarati | ✓ | +| 57011 | x-iscii-pa | ISCII Punjabi | ✓ | +| 65000 | utf-7 | Unicode (UTF-7) | | +| 65001 | utf-8 | Unicode (UTF-8) | ✓ | The following example calls the and methods to get the Greek (Windows) code page encoding. It compares the objects returned by the method calls to show that they are equal, and then maps displays the Unicode code point and the corresponding code page value for each character in the Greek alphabet.