Skip to content

Instantly share code, notes, and snippets.

@slpsys
Created March 10, 2011 02:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save slpsys/863497 to your computer and use it in GitHub Desktop.
Save slpsys/863497 to your computer and use it in GitHub Desktop.
Mapping goofy shit with AutoMapper
Mapper.CreateMap<CacheObjects.CreditDefaultSwapPrice, CDSSettlementData>()
.ForMember(dest => dest.ProductKey, opt => opt.MapFrom(src => src))
.ForMember(dest => dest.Settlements, opt => opt.MapFrom(src => src.Settlements))
.AfterMap((src, dest) =>
{
if (dest.Settlements != null)
{
foreach (var settlement in dest.Settlements)
{
settlement.OpenInterest = src.OpenInterest;
settlement.TotalVolume = src.TotalVolume;
}
}
} )
;
Mapper.CreateMap<CacheObjects.CreditDefaultSwapSettlement, CDSSettlement>()
.ForMember(dest => dest.Price, opt => opt.MapFrom(src => src.EntryPrice))
.ForMember(dest => dest.PriceRepresentation, opt => opt.MapFrom(src => src.EntryPriceType))
.ForMember(dest => dest.PriceSource, opt => opt.MapFrom(src => src.Market))
.ForMember(dest => dest.TradeOrTheoreticalPrice, opt => opt.MapFrom(src => src.OpenCloseSettlementFlag))
;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment