据我所知,您无法在标准的.asmx webservice中返回通用列表。但是我相信你可以返回一个数组[]。我的问题是将列表转换为数组。有人可以帮忙吗? 我有一堆业务对象已经返回一个类型列表,所以我不打开将原始对象转换为数组......
这是我的WebMethod。
[WebMethod]
public Book[] GetBooksList()
{
List<Book> obj = new List<Book>();
BookDA dataAccess = new BookDA();
obj = dataAccess.GetBooksAll().ToArray(); //error 1 here on conversion
return obj; //error 2 here
}
我收到的错误是2折:无法隐式转换类型BookDTO.Book []到GenericList
无法将GenericList类型隐式转换为
答案 0 :(得分:0)
因为你已经声明obj是一个列表,而不是一个数组。试试这个:
[WebMethod]
public Book[] GetBooksList()
{
BookDA dataAccess = new BookDA();
List<Book> obj = dataAccess.GetBooksAll();
return obj.ToArray();
}
或者更好:
[WebMethod]
public Book[] GetBooksList()
{
var dataAccess = new BookDA();
var obj = dataAccess.GetBooksAll().ToArray();
return obj;
}