Linq を生成するために Automapper を使用して IQueryable< entity> を IQueryable< entityDTO> にマップしようとしています。私は、エンティティ フレームワークと oracle 11g を使用した Web API プロジェクトに取り組んでいます。
public virtual IQueryable<TDto> Get()
{
IQueryable<TEntity> EntObjs;
EntObjs = GenericService.Get();
var Dtos = EntObjs.Project().To<TDto>();
return Dtos;
}
Tentity 型にコレクションが含まれていない限り、問題なく動作します。http://www.devtrends.co.uk/blog/stop-using-automapper-in-your-data-access-codeで情報を見つけました。これは問題解決の途中です。follow関数を使用してAutomapperでコレクションをマップできることはわかっていますが、Iquerableチェーンを壊さないようにlinqに置く必要があります。
Mapper.Map<TSource, TDestination>(Source,Destincation);