Type.IsSerializable Type.IsSerializable Type.IsSerializable Type.IsSerializable Property

Définition

Obtient une valeur indiquant si le Type est sérialisable.Gets a value indicating whether the Type is serializable.

public:
 property bool IsSerializable { bool get(); };
public bool IsSerializable { get; }
member this.IsSerializable : bool
Public ReadOnly Property IsSerializable As Boolean

Valeur de propriété

true si le Type est sérialisable ; sinon, false.true if the Type is serializable; otherwise, false.

Implémente

Exemples

L’exemple suivant crée une instance de MyTestClass la classe, définit l’attribut [Serializable] et vérifie la IsSerializable propriété pour true ou false.The following example creates an instance of MyTestClass class, sets the [Serializable] attribute, and checks the IsSerializable property for true or false.

using namespace System;
public ref class MyClass
{
public:

   // Declare a public class with the [Serializable] attribute.

   [Serializable]
   ref class MyTestClass{};


};

int main()
{
   try
   {
      bool myBool = false;
      MyClass::MyTestClass^ myTestClassInstance = gcnew MyClass::MyTestClass;
      
      // Get the type of myTestClassInstance.
      Type^ myType = myTestClassInstance->GetType();
      
      // Get the IsSerializable property of myTestClassInstance.
      myBool = myType->IsSerializable;
      Console::WriteLine( "\nIs {0} serializable? {1}.", myType->FullName, myBool );
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "\nAn exception occurred: {0}", e->Message );
   }

}

using System;
namespace SystemType
{
    public class MyClass
    {
        // Declare a public class with the [Serializable] attribute.
        [Serializable] public class MyTestClass 
        {
        }
        public static void Main(string []args)
        {
            try
            {
                bool myBool = false;
                MyTestClass myTestClassInstance = new MyTestClass();
                // Get the type of myTestClassInstance.
                Type myType = myTestClassInstance.GetType();
                // Get the IsSerializable property of myTestClassInstance.
                myBool = myType.IsSerializable;
                Console.WriteLine("\nIs {0} serializable? {1}.", myType.FullName, myBool.ToString());
            }
            catch (Exception e)
            {
                Console.WriteLine("\nAn exception occurred: {0}", e.Message);
            }
        }
    }
}
Namespace SystemType
    Public Class [MyClass]
        ' Declare a public class with the [Serializable] attribute.
        <Serializable()> Public Class MyTestClass
        End Class 'MyTestClass
        Public Overloads Shared Sub Main()
            Try
                Dim myBool As Boolean = False
                Dim myTestClassInstance As New MyTestClass()
                ' Get the type of myTestClassInstance.
                Dim myType As Type = myTestClassInstance.GetType()
                ' Get the IsSerializable property of myTestClassInstance.
                myBool = myType.IsSerializable
                Console.WriteLine(ControlChars.Cr + "Is {0} serializable? {1}.", myType.FullName, myBool.ToString())
            Catch e As Exception
                Console.WriteLine(ControlChars.Cr + "An exception occurred: {0}", e.Message.ToString())
            End Try
        End Sub 'Main
    End Class '[MyClass]
End Namespace 'SystemType

Remarques

Les types définis dans le .NET Standard ne sont pas marqués avec SerializableAttribute.Types that are defined in the .NET Standard are not marked with SerializableAttribute. Au lieu de cela, chaque implémentation .NET détermine si un type est sérialisable.Instead, each .NET implementation determines whether a type is serializable. Au moment de l’exécution, vous pouvez IsSerializable utiliser la propriété pour déterminer si cette implémentation prend en charge la sérialisation d’une instance du type.At run time, you can use the IsSerializable property to determine whether that implementation supports serialization of an instance of the type. Pour plus d’informations et pour obtenir un exemple, consultez Comment déterminer si un objet .NET standard est sérialisable.For more information and an example, see How to determine if a .NET Standard object is serializable.

Si le actuel Type représente un type générique construit, cette propriété s’applique à la définition de type générique à partir de laquelle le type a été construit.If the current Type represents a constructed generic type, this property applies to the generic type definition from which the type was constructed. Par exemple, si le actuel Type représente MyGenericType<int> (MyGenericType(Of Integer) dans Visual Basic), la valeur de cette propriété est déterminée par MyGenericType<T>.For example, if the current Type represents MyGenericType<int> (MyGenericType(Of Integer) in Visual Basic), the value of this property is determined by MyGenericType<T>.

Si le actuel Type représente un paramètre de type dans la définition d’un type générique ou d’une méthode générique, cette falsepropriété retourne toujours.If the current Type represents a type parameter in the definition of a generic type or generic method, this property always returns false.

S’applique à

Voir aussi