我正在尝试创建和使用web服务...我使用的是.NET Framework4.0 (c#)。该服务公开如下所示的方法:
public List<object[]> GetData(string strRegion, List<string> lstBrand, List<string> lstColor)然后在客户端应用程序上,我声明了一个对象列表:
List<object[]> lst = new List<object[]>();..。并尝试像这样填充它:
MyService.MyClient os = new MyClient();
lst = os.GetData(myRegionString, myBrandList, myColorList);..。但我得到的是,“无法隐式地将类型'object‘转换为'System.Collections.Generic.List'”。我做错了什么?
谢谢!
发布于 2012-09-18 03:16:33
在解决方案资源管理器中,右键单击您的服务并进行配置。您可能已将数据收集默认类型设置为数组。可以将其设置为列表类型。此外,我会重新考虑通过web服务发送object。您通常需要定义良好的数据类型。我认为您甚至不能通过web服务发送类型object。
发布于 2012-09-18 03:16:06
试一试
MyService.MyClient os = new MyClient();
lst = os.GetData(myRegionString, myBrandList, myColorList).ToList();当列表从web服务传递到客户端时,它们将被序列化为数组,因此您需要再次将其转换回列表。
发布于 2012-09-18 03:16:53
MyClient.GetData()方法返回一个锯齿数组。要将此数组转换为列表,您应该能够使用System.Linq名称空间中的ToList()方法:
lst = os.GetData(myRegionString, myBrandList, myColorList).ToList();https://stackoverflow.com/questions/12465695
复制相似问题