XmlMessageFormatter.TargetTypeNames Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Specifies the set of possible types that will be deserialized by the formatter from the message provided.

Namespace:   System.Messaging
Assembly:  System.Messaging (in System.Messaging.dll)

public string[] TargetTypeNames { get; set; }

Property Value

Type: System.String[]

An array of type String that specifies the types of objects to deserialize from the message body when reading the message.

Exception Condition

The TargetTypeNames property is null.

Both the TargetTypeNames and TargetTypes properties tell the formatter what schemas to attempt to match when deserializing a message. This allows the formatter to interpret the message body.

The instance serialized in the message body must comply with one of the schemas represented in the type array. When you read the message using the Receive method, the method creates an object of the type that corresponds to the schema identified and reads the message body into it.

Only one of the two properties needs to be set when reading from the queue, but you can set both. The set of types is the combined set from the two properties. The decision of which property to use is specific to your application. If the message body contains a type whose schema does not match any of the types in the array for either property, an exception will be thrown when the message is read.

TargetTypeNames requires every entry to be fully qualified, specifying its assembly name. Further, when working with multiple concurrent versions, the version number must also be appended to the target type name as well.

The target types are only required when reading from the queue. The TargetTypeNames and TargetTypes properties do not need to be set to write to the queue.

.NET Framework
Available since 1.1
Return to top