Comparteix a través de


Los serializadores personalizados requieren miembros adicionales

El analizador de serializador personalizado ha cambiado para requerir que todos los modos de serialización centrados en elementos satisfagan las formas de administrado a no administrado y de no administrado a administrado.

Comportamiento anterior

Los serializadores personalizados con MarshalMode.ElementIn solo necesitaban un método ConvertToUnmanaged. Los serializadores personalizados con MarshalMode.ElementOut solo necesitaban un método ConvertToManaged.

Comportamiento nuevo

A partir de .NET 8, se notifica SYSLIB1057 para serializadores personalizados con MarshalMode.ElementIn o MarshalMode.ElementOut que no tienen un método ConvertToUnmanaged y ConvertToManaged.

Versión introducida

.NET 8 RC 1

Tipo de cambio importante

Este cambio puede afectar a la compatibilidad de orígenes.

Motivo del cambio

Con la introducción de COM generado por el origen, los serializadores se pueden usar en escenarios de elementos en escenarios de administrado a no administrado y de no administrado a administrado. Este cambio actualiza el analizador para asegurarse de que los serializadores definidos por el usuario tienen los miembros necesarios para todos los escenarios en los que se pueda usar el serializador.

Agregue un método ConvertToManaged y ConvertToUnmanaged al tipo de serializador.

API afectadas