3

我想根据源中的属性值将基类映射到几个派生类之一。到目前为止,我有这个,但它似乎有点笨拙和丑陋。有没有更好的办法?

Mapper.CreateMap<DTO.BaseData, BaseData>()
                .ConstructUsing(src =>
                {
                    switch (src.Type)
                    {
                        case 0:
                            return new FtpData(src.Id, src.Content);

                        // many more case statements in here.....

                    }

                    return new NullData();
                });
4

0 回答 0