-1

如何将 Web 服务返回的对象保持为ArrayOfString?

语境化:

我在使用 Web 服务的应用程序中进行维护,并且某个对象将List<string>作为ArrayOfString. 更新在哪里引用了 WebService,返回移动到string[]你可以做些什么来保持原样ArrayOfString

它也回来了:

private string[] motivoInterrupcaoField;

什么时候应该返回这个:

[System.Runtime.Serialization.OptionalFieldAttribute()] private Atendimento.wsAtendimento.ArrayOfString MotivoInterrupcaoField;

谢谢,

4

1 回答 1

1

如果您的服务方法返回List<string>,您将看到此返回值转换为ArrayOfString代理中的类型对象。当您的服务方法设计为返回string[]时,您会string[]在代理中找到。

如果服务方法的返回值发生了变化,客户端,这意味着服务合同已经改变。如果您不控制合同,那么您无能为力,除了实现您自己的 ArrayOfString 类以在客户端上使用(这在 imo 中应该不难做到)。

我认为这不是一个糟糕的解决方案,因为它确实意味着您只需让客户端适应对服务合同所做的更改。

于 2016-09-14T20:23:38.450 回答