Export (0) Print
Expand All

MessageContractMemberAttribute Class

Declares the base members for MessageBodyMemberAttribute and MessageHeaderAttribute.

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

public abstract class MessageContractMemberAttribute : Attribute

This class contains properties common to all parts of a SOAP message. For example, all parts have a name and a namespace, and potentially a level of security applied.

For information on controlling the serialization of the contents of a SOAP body without modifying the default SOAP envelope itself, see System.Runtime.Serialization.DataContractAttribute, Specifying Data Transfer in Service Contracts, and Data Contracts Overview.

For more information about creating message contracts, see Using Message Contracts.

The following code examples demonstrate a custom message contract that uses the MessageContractAttribute, MessageHeaderAttribute, and MessageBodyMemberAttribute attributes (which all inherit from MessageContractMemberAttribute)to create custom typed messages to use in operations. In this case, there are three members that are serialized into the body element of the SOAP message: sourceAccount, targetAccount, and the amount value, (which is serialized into an element with the name transactionAmount). In addition, the IsAudited SOAP header element resides in the http://schemas.contosobank.com/auditing/2005 namespace, and sourceAccount is encrypted and digitally signed.

NoteNote:

The Operation and Account types must have a data contract.

[MessageContract]
public class BankingTransaction
{
  [MessageHeader] 
  public Operation operation;
  [MessageHeader(Namespace="http://schemas.contosobank.com/auditing/2005")] 
  public bool IsAudited;
  [MessageBody(ProtectionLevel=ProtectionLevel.EncryptAndSign)] 
  public Account sourceAccount;
  [MessageBody] 
  public Account targetAccount;
  [MessageBody(Name="transactionAmount")] 
  public int amount;

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003

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

Community Additions

ADD
Show:
© 2014 Microsoft