This documentation is archived and is not being maintained.

CodeGenerationOptions Enumeration

Specifies various options to use when generating .NET Framework types for use with an XML Web Service.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

Namespace:  System.Xml.Serialization
Assembly:  System.Xml (in System.Xml.dll)

public enum CodeGenerationOptions

Member nameDescription
NoneRepresents primitive types by fields and primitive types by System namespace types.
GeneratePropertiesRepresents primitive types by properties.
GenerateNewAsyncCreates events for the asynchronous invocation of Web methods.
GenerateOldAsyncCreates Begin and End methods for the asynchronous invocation of Web methods.
GenerateOrderGenerates explicitly ordered serialization code as specified through the Order property of the XmlAnyElementAttribute, XmlArrayAttribute, and XmlElementAttribute attributes.
EnableDataBindingEnables data binding.

A Web Service Description Language (WSDL) file typically describes a class in XML schema language as an xsd:complex type composed of various primitive xsd:complex and xsd:simple types. When generating a .NET Framework class that represents a given xsd:complex type, you must choose how to represent the various primitive types it contains.

By default, each primitive is implemented as a field. If you specify the GenerateProperties option, each primitive type is instead implemented as a property.

Ordering of Serialization Code

The GenerateOrder member instructs the code generator to create the serialization code in a specific order as determined by the Order property of the following attributes:


Once the Order property has been set on one public property or field in a type, it must be applied to all public properties and fields for that type and all inherited types.

The following example illustrates the use of the CodeGenerationOptions enumeration to specify the behavior of a ServiceDescriptionImporter object.

// Generate properties to represent primitive values.
importer.CodeGenerationOptions = System.Xml.Serialization.CodeGenerationOptions.GenerateProperties;
// Use types from the System.Data.SQLTypes namespace. 
importer->CodeGenerationOptions = System::Xml::Serialization::CodeGenerationOptions::UseSqlTypes;

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0