在Web Service CarService中,
在GetCar中,我有一个附加List的循环,你猜对了..汽车。
Dim carList As New List(Of Car)
执行rdr.Read() 如果rdr.GetValue(1).ToString()。Length> 0然后 Dim c As Car = New Car c.Color = rdr.GetValue(1).ToString() carList.Add(c)中 万一 环
GetCars()返回carList。
我还在另一个项目中有另一个页面消耗这些数据。
或者至少,我想,这是我的问题..
如果我这样做..
Dim myNewCars As List(Of Namespace.Car)
myNewCars = CarServiceProxy.GetCars()
我明白了:
类型'Namespace.Car的1维数组'的值无法转换为'System.Collections.Generic.List(Of Namespace.Car)'。
将这个1维数组转换回汽车列表的最佳方法是什么?
答案 0 :(得分:4)
没有改变什么?使用接受List<T>
的{{1}}构造函数 - 所以在C#中(我的VB不是很好):
IEnumerable<T>
如果你能改变一切;或许可以考虑像WCF一样的用法,你可以指定集合类型(所有方法) - List<Car> myNewCars = new List<Car>(CarServiceProxy.GetCars());
开关。但是,更改为WCF堆栈并非易事。
答案 1 :(得分:1)
使用.NET 3.5(和.NET 4.0),您可以:
Dim myNewCars As List(Of Namespace.Car)
myNewCars = CarServiceProxy.GetCars().ToList()