• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#-AutoMapper之不同类型的转换

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

 

一、Dto & Model约定

    class TestDto
    {
        public string Name { get; set; }
        public int Age { get; set; }
        public List<string> Candidates { get; set; }
    }

    class TestModel
    {
        public string Name { get; set; }
        public int Age { get; set; }
        public List<CandidateModel> Candidates { get; set; }
    }
    class CandidateModel
    {
        public DateTime StartTime { get; set; }
        public string Candidate { get; set; }
    }

 

 

 二、需求:筛选出TestModel中StartTime小于当前时间的候选人,并将其传输给TestDto的Candidates字段。

class Program
    {
        static void Main(string[] args)
        {
            var testModel = new TestModel()
            {
                Name = "Frankie",
                Age = 22,
                Candidates = new List<CandidateModel>()
                {
                    new CandidateModel(){StartTime = new DateTime(2018, 10, 9, 10, 0, 0), Candidate = "贝贝"},
                    new CandidateModel(){StartTime = new DateTime(2018, 10, 22, 10, 0, 0), Candidate = "asan"},
                    new CandidateModel(){StartTime = new DateTime(2018, 10, 10, 10, 0, 0), Candidate = "pangzi"}
                }
            };
            // DataTime.Now : {2018/10/21 21:51:12}
            testModel.Candidates = testModel.Candidates.Where(_ => _.StartTime < DateTime.Now).ToList();

            Mapper.Initialize(_ => _.CreateMap<TestModel, TestDto>()
                .ForMember(s => s.Candidates,
                    d => d.MapFrom(x => x.Candidates.Select(y => y.Candidate))));

            var testDto = Mapper.Map<TestDto>(testModel);
        }
    }

 

Result:

 

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C#.NET禁止一个程序启动多个实例发布时间:2022-07-13
下一篇:
C#编程规范发布时间:2022-07-13
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap