При добавлении ссылки на службу таким образом каждый сгенерированный контракт сообщения оформляется аналогично следующему:
[DebuggerStepThrough]
[GeneratedCode( "System.ServiceModel", "4.0.0.0" )]
[MessageContract( WrapperName = "GetCourseList", WrapperNamespace = "urn:CoursesIntf-ICourses",
IsWrapped = true )]
public partial class GetCourseListRequest
{
[MessageBodyMember( Namespace = "", Order = 0 )]
public string licence;
public GetCourseListRequest()
{
}
public GetCourseListRequest( string licence )
{
this.licence = licence;
}
}
Каждый сгенерированный контракт операции оформляется аналогично следующему:
[GeneratedCode( "System.ServiceModel", "4.0.0.0" )]
[ServiceContract( ConfigurationName = "ServiceReferences.ICourses" )]
public interface ICourses
{
[OperationContract( Action = "urn:CoursesIntf-ICourses#GetCourseList", ReplyAction = "*" )]
[XmlSerializerFormat( Style = OperationFormatStyle.Rpc, SupportFaults = true,
Use = OperationFormatUse.Encoded )]
[ServiceKnownType( typeof( TCourse ) )]
GetCourseListResponse GetCourseList( GetCourseListRequest request );
// Remaining operation contracts omitted
}
Проверьте Reference.cs
, чтобы определить, оформлены ли ваши сообщения и контракты на операции одинаково.Если они есть, проблема лежит в другом месте.Сообщение об исключении будет полезно для отслеживания проблемы (например, это может быть порядок элементов в возвращенном сообщении SOAP).