動作していない次のコードがあります。
var groupedZones = this._zoneDataManager.GetZonesGroupedByCountry();
IEnumerable<IGrouping<String, ZoneDTO>> zonesToReturn = Mapper.Map<IEnumerable<IGrouping<String, Zone>>, IEnumerable<IGrouping<String, ZoneDTO>>>(groupedZones);
次の例外が発生し続けます。
値 \"System.Collections.Generic.List
1[SCGRE.Business.Model.ZoneDTO]\" is not of type \"System.Linq.IGrouping
2[System.String,SCGRE.Business.Model.ZoneDTO]\" は、この汎用コレクションでは使用できません。\r\nパラメーター名: 値
なぜ aList<T>
を anにマップしようとしているのかわからない、IGrouping<String, T>
または例外を適切に理解していなかったのかもしれません...しかし、基本的に a があり、IEnumerable<IGrouping<String, Zone>>
それをにマップしたいIEnumerable<IGrouping<String, ZoneDTO>>
次のように からZone
へのマップを作成したことに注意してください。ZoneDTO
Mapper.CreateMap<Zone, ZoneDTO>();
これは、両方のクラスがほぼ同じプロパティを持っているためです。
何か案は?