2

我在 .NET 中创建了一个 Web 服务,它在 Silverlight 和 WPF 上运行良好。我想尝试一下 Delphi XE4。我的服务使用 SOAP 公开,因此非常适合具有自动 WSDL 导入器的 Rad Studio。我的问题是我的每种类型的 ws 都用 2 个类表示。

第一个是复杂类型,它继承自 TRemotable:

// ************************************************************************ //
// XML       : MessageRecuperationSalaries, global, <complexType>
// Espace de nommage : http://XXX/XXX/XXX
// ************************************************************************ //
MessageRecuperationSalaries2 = class(TRemotable)
private
  FEtabCode: string;
  FEtabCode_Specified: boolean;
  FSalaries: ArrayOfSalarie;
  FSalaries_Specified: boolean;
  procedure SetEtabCode(Index: Integer; const Astring: string);
  function  EtabCode_Specified(Index: Integer): boolean;
  procedure SetSalaries(Index: Integer; const AArrayOfSalarie: ArrayOfSalarie);
  function  Salaries_Specified(Index: Integer): boolean;
public
  destructor Destroy; override;
published
  property EtabCode: string          Index (IS_OPTN or IS_NLBL) read FEtabCode write SetEtabCode stored EtabCode_Specified;
  property Salaries: ArrayOfSalarie  Index (IS_OPTN or IS_NLBL) read FSalaries write SetSalaries stored Salaries_Specified;
end;

第二个类继承自第一个类并且不包含任何属性:

// ************************************************************************ //
// XML       : MessageRecuperationSalaries, global, <element>
// Espace de nommage : http://XXX/XXX/XXX
// ************************************************************************ //
MessageRecuperationSalaries = class(MessageRecuperationSalaries2)
private
published
end;

是否有任何选项可以直接为每个继承自 TRemotable 的类型生成一个类?还是我的网络服务有问题?

4

0 回答 0