我在我的asp.net webapi項目中實現了automapper。我還在業務層中實施了異步任務。我基本上要返回MoviesDto對象,而不是電影的實體,但得到一個錯誤列表不包含getAwaiter.The錯誤definiton是在該行List <>不包含getAwaiter的定義
return await _mapper.Map<List<MoviesDto>>(movies);
不知道是什麼問題。這裏是我的代碼如下
MoviesDto
public class MoviesDto : BaseDto
{
public int MovieID { get; set; }
public string Title { get; set; }
public int? ReleaseYear { get; set; }
public string Plot { get; set; }
public int? MovieLength { get; set; }
}
業務接入層
public class MovieBusiness: IMovieBusiness
{
IMovieService _movieService;
IMapper _mapper;
public MovieBusiness(IMovieService movieService, IMapper mapper)
{
_movieService = movieService;
_mapper = mapper;
}
public async Task<IEnumerable<MoviesDto>> GetAllMovies()
{
var movies = _movieService.GetMovies();
return await _mapper.Map<List<MoviesDto>>(movies);
}
}
中有標記的地圖'()'方法'async'沒有點作爲它不涉及I/O並不能阻止潛在的。它是'_movieService.GetMovies()'最好是'async',應該是'await'ed。 – haim770