ビュー モデルとドメイン モデルをマッピングするための一般的なマッパー関数があります。何らかの理由で、Enum 値をマップしません。
public TDomainModel MapToDomainModel<TViewModel, TDomainModel>(TViewModel viewModel)
{
Mapper.CreateMap<TViewModel, TDomainModel>();
TDomainModel result = Mapper.Map<TViewModel, TDomainModel>(viewModel);
return result;
}
public TViewModel MapToViewModel<TDomainModel, TViewModel>(TDomainModel domainModel)
{
Mapper.CreateMap<TDomainModel, TViewModel>();
TViewModel result = Mapper.Map<TDomainModel, TViewModel>(domainModel);
return result;
}
ビュー モデルからドメイン モデルにマッピングするときに、列挙型の値を整数にマッピングする必要があります。また、ドメイン モデルからビュー モデルにマッピングするときに、整数から列挙値にマッピングします。
ソリューションが、null 許容列挙型からより多くの型 (short、byte など) に、またはその逆に変換できるほど柔軟であれば、それは素晴らしいことです。