내 개체를 올바르게 매핑하기 위해 ValueInjector를 가져 오는 데 문제가 있습니다. ValueInjector가 매핑 속성이 아닙니다.
public IEnumerable<CategoryDTO> FindCategories(IList<object[]> criteria)
{
IEnumerable<Category> categories = _categoryRepo.Find(criteria);
IEnumerable<CategoryDTO> categoriesDto = Mapper.Map<IEnumerable<Category>, IEnumerable<CategoryDTO>>(categories);
return categoriesDto;
}
변수 범주
이 속성이 포함되어 있습니다 : 이IEnumerable<Standard> Standards
이 특성은 I가 전화 했어 인스턴스에서 두 개의 표준 개체를 포함 이것은 내가 매핑을 위해 사용하고있는 코드입니다. 문제는 내 카테고리에서 내 카테고리 DTO로 매핑 할 때입니다. CategoryDTO이 다음과 같이 정의된다 매핑 문이 실행
public class CategoryDTO : AuditableDTO
{
public Guid CategoryId { get; set; }
public string Name { get; set; }
public string MachineName { get; set; }
public string Description { get; set; }
public IEnumerable<StandardDTO> Standards { get; set; }
}
후, 나는 categoriesDto.Standards의 내용을 조사, 난 널 볼 수 있습니다. 내 표준이 매핑 될 것으로 기대했지만, ValueInjector를 사용하여 뭔가를 놓치고 있다고 확신합니다. 표준을 StandardDTO에 매핑하는 방법을 알려주는 선상에있는 것 같습니다. 이견있는 사람?
편집 : 나는이 http://valueinjecter.codeplex.com/wikipage?title=Automapper%20Simulation&referringTitle=Home
편집 2를 사용하고, 명확히해야 더 깊이 파고, 내 Iesi.Collections.HashedSet이 문제를 일으키는 것을 볼 수 있습니다. 범주의 표준 속성은 Iesi.Collections.ISet로 입력되며 HashedSet으로 바뀝니다. 그래서 내 진짜 질문은 그 유형에 대한 속성을 확인하고 어떻게 매핑 할 수 있습니까?
이 길을 갈 필요까지 종료. 그것은 효과가 있었다. –