在我的方法中,我希望返回一个IEnumerable,但我创建了一个列表,所以我可以添加结果到它,我想返回创建的列表添加项目作为一个不可数,但无法将列表作为ienumerable返回。我试图创建一个不可数,所以我可以添加项目,但它不允许我添加。
这是我的方法:
public IEnumerable<IGrouping<string,User>> GetUser(int? id, int? pageNumber)
{
int _pageNum = pageNumber.HasValue ? pageNumber.Value : 1;
var userIndex = new UserService().GetUsers(id.Value, pageNumber: _pageNum).GroupBy(x => x.Name.Substring(0, 1));
var userList = new List<User>();
foreach (var group in userIndex)
{
string curLetter = group.Key;
foreach (User user in group)
{
userList.Add(user);
}
}
return userList.AsEnumerable();
}
答案 0 :(得分:0)
根据我的理解:
public IEnumerable<IGrouping<string,User>> GetUser(int? id, int? pageNumber)
{
int _pageNum = pageNumber.HasValue ? pageNumber.Value : 1;
return new UserService().GetUsers(id.Value, pageNumber: _pageNum).OrderBy(x => x.Name.Substring(0, 1));
}
也许我没有得到你的问题。
@Servy指出了问题,为什么不是
public IEnumerable<IGrouping<string, User>> GetUser(int? id, int? pageNumber)
{
int _pageNum = pageNumber.HasValue ? pageNumber.Value : 1;
return new UserService().GetUsers(id.Value, pageNumber: _pageNum).GroupBy(x => x.Name.Substring(0, 1));
}
答案 1 :(得分:-2)
使用ActionResult作为Action的返回类型 并改变 return userList;返回userList.tolist();