static MessageDescriptionCollection MessageContractToMessagesDescription(
Type src, string defaultNamespace, string action)
{
MessageContractAttribute mca =
ContractDescriptionGenerator.GetMessageContractAttribute(src);
if (mca == null)
{
throw new ArgumentException(String.Format("Type {0} and its ancestor types do not have MessageContract attribute.", src));
}
MessageDescriptionCollection messages = new MessageDescriptionCollection();
messages.Add(ContractDescriptionGenerator.CreateMessageDescription(src, defaultNamespace, action, true, mca));
messages.Add(ContractDescriptionGenerator.CreateMessageDescription(src, defaultNamespace, action, false, mca));
return(messages);
}