Type.IsSerializable Property
Gets a value indicating whether the Type is serializable.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
If the current Type represents a constructed generic type, this property applies to the generic type definition from which the type was constructed. 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>.
If the current Type represents a type parameter in the definition of a generic type or generic method, this property always returns false.
The following example creates an instance of MyTestClass class, sets the [Serializable] attribute, and checks the IsSerializable property for true or false.
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); } } } }
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.