Необходимо добавить в существующий Delphi проект обмен данными с удаленным сервером через SOAP. WSDL есть. Столкнулся с тем, что wsdl импортер для Delphi отрабатывает не корректно.
Пример
1. Кусок WSDL
2. Сформированный wsdl импортером Delphi-класс для вышеуказанного куска.
MessagePrimaryContent = class(TRemotable)
private
Fid: string;
Fid_Specified: boolean;
procedure Setid(Index: Integer; const Astring: string);
function id_Specified(Index: Integer): boolean;
published
property id: string Index (IS_ATTR or IS_OPTN) read Fid write Setid stored id_Specified;
end;
3. С# класс для него же
public partial classMessagePrimaryContent: object,System.ComponentModel.INotifyPropertyChanged{privateSystem.Xml.XmlElement anyField;private string idField;/// <remarks/>[System.Xml.Serialization.XmlAnyElementAttribute(Order=0)]publicSystem.Xml.XmlElementAny{
get {returnthis.anyField;}set{this.anyField = value;this.RaisePropertyChanged("Any");}}/// <remarks/>[System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")]public string id {
get {returnthis.idField;}set{this.idField = value;this.RaisePropertyChanged("id");}}public event System.ComponentModel.PropertyChangedEventHandlerPropertyChanged;protectedvoidRaisePropertyChanged(string propertyName){System.ComponentModel.PropertyChangedEventHandler propertyChanged =this.PropertyChanged;if((propertyChanged != null)){
propertyChanged(this,newSystem.ComponentModel.PropertyChangedEventArgs(propertyName));}}}
После импорта в Delphi никакого упоминания об элементе Any нет, в отличии от С#. Может у кого были похожие проблемы?? Или кто нибудь знает альтернативный вариант WSDL -импортера.?
Уж очень не хочется разбирать XML вручную.
P.S. Импорт тестировался на d7, XE1, XE10.1 - результат одинаков.
Вопрос
DigriZ
Необходимо добавить в существующий Delphi проект обмен данными с удаленным сервером через SOAP. WSDL есть. Столкнулся с тем, что wsdl импортер для Delphi отрабатывает не корректно.
Пример
1. Кусок WSDL
2. Сформированный wsdl импортером Delphi-класс для вышеуказанного куска.
3. С# класс для него же
После импорта в Delphi никакого упоминания об элементе Any нет, в отличии от С#. Может у кого были похожие проблемы?? Или кто нибудь знает альтернативный вариант WSDL -импортера.?
Изменено пользователем DigriZУж очень не хочется разбирать XML вручную.
P.S. Импорт тестировался на d7, XE1, XE10.1 - результат одинаков.
Ссылка на комментарий
0 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.