【发布时间】:2011-06-23 05:14:16
【问题描述】:
我有一个带有这样签名的 Web 方法:
public string[] ToUpper(string[] values)
我正在使用 Visual Studio 2010 中的“添加服务引用”来生成对我的服务的引用。不幸的是,这个过程创建了一个名为 'ArrayOfString' 的代理类,并使用这种类型而不是预期的 'string[]' 类型。生成的异步服务调用签名最终看起来像这样:
public void ToUpperAsync(Demo.ServiceReference.ArrayOfString values) { }
public void ToUpperAsync(Demo.ServiceReference.ArrayOfString values, object userState) { }
我已经尝试了配置服务参考表单上“集合”下拉菜单的所有选项,但似乎没有什么不同。
这之前可以正常工作,但由于某种原因突然停止工作,可能是在从服务中删除了另一个 Web 方法之后。
如何让生成的服务引用类使用 string[] 类型而不是生成的 ArrayOfString 类型?对此的任何帮助将不胜感激。
编辑: 正如@Oleg 建议的那样,我正在使用 ASMX Web 服务。
【问题讨论】:
-
也许您的服务方法正在返回字符串列表 - 看看stackoverflow.com/questions/505943/…
-
@VinayC:我确实首先阅读了这个问题,尽管作者要求回答他的两个问题中的任何一个。我想知道“有没有办法告诉它不要生成 ArrayOfString”这个问题的答案,该帖子中没有回答。
标签: c# web-services asmx proxy-classes