Ваша проблема вызвана тем, что клиент Delphi помещает составной элемент, определенный в пространстве имен "http://tempuri.org/" XML " вместо пространства имен "http://schemas.datacontract.org/2004/07/DelphiService2"". Все составные элементы, BoolValue и StringValue должны быть определены в «http://schemas.datacontract.org/2004/07/DelphiService2" XML-пространстве имен (с префиксом псевдонима пространства имен« a: »в данном случае).
Один из способов решения этой проблемы, если клиентский сериализатор Delphi не может быть настроен, состоит в замене предоставленных WCF пространств имен по умолчанию "http://tempuri.org/" и" http://schemas.datacontract.org/2004/07/DelphiService2" тем, который вы определяете сами. Настройте контракт на обслуживание, чтобы соответствовать изменениям , описанным в этом посте , а также измените DataContracts, чтобы соответствовать новому пространству имен XML. Таким образом, все определенные сервисом операции и объекты будут находиться в одном пространстве имен XML.
[DataContract(Namespace="http://YourNamespace/2011/09/DelphiService2")]
public class composite
{
public bool BoolValue {get; set;}
public string StringValue {get; set;}
}