VS知道.当然,其实是csc知道.
编译能成功就没错.
你补充的那个是因为
new { c.Author,c.BookImg}
这个表达式创建的是一个匿名类型的对象,而不是BookInfo.
匿名类型不能作为方法的返回值的类型.你可以这样做:
BookInfos.Select(c => new BookInfo { Author = c.Author, BookImg = c.BookImg}).Skip(pageSize*pageNo).Take(pageSize).ToList()
这样返回的就是List<BookInfo>了.
也可以创建一个新的类型:
struct BookAuthorAndImage
{
public string Author
{
get;set;
}
public sting BookImage
{
get;set;
}
}
然后这样:
BookInfos.Select(c => new BookAuthorAndImage { Author = c.Author, BookImg = c.BookImg}).Skip(pageSize*pageNo).Take(pageSize).ToList()
并把方法的返回类型改为List<BookAuthorAndImage>.