-
Notifications
You must be signed in to change notification settings - Fork 159
/
Copy pathArticleManagingProfile.cs
35 lines (32 loc) · 1.21 KB
/
ArticleManagingProfile.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
using AutoMapper;
using CoreWiki.Application.Articles.Managing.Commands;
using CoreWiki.Application.Articles.Managing.Dto;
using CoreWiki.Core.Domain;
namespace CoreWiki.Application.Articles.Managing
{
public class ArticleManagingProfile: Profile
{
public ArticleManagingProfile()
{
CreateMap<CreateNewArticleCommand, Article>()
.ForMember(d => d.Id, m=> m.Ignore())
.ForMember(d => d.Version, m => m.MapFrom(_ => 1))
.ForMember(d => d.Published, m => m.Ignore())
.ForMember(d => d.Comments, m => m.Ignore())
.ForMember(d => d.History, m => m.Ignore())
.ForMember(d => d.ViewCount, m => m.MapFrom(_ => 0))
.ForMember(d => d.Slug, m => m.Ignore())
;
CreateMap<CreateSkeletonArticleCommand, Article>()
.ForMember(d => d.Id, m => m.Ignore())
.ForMember(d => d.Version, m => m.MapFrom(_ => 1))
.ForMember(d => d.Published, m => m.Ignore())
.ForMember(d => d.Comments, m => m.Ignore())
.ForMember(d => d.History, m => m.Ignore())
.ForMember(d => d.ViewCount, m => m.MapFrom(_ => 0))
.ForMember(d => d.Topic, m => m.MapFrom(s => Article.SlugToTopic(s.Slug)))
.ForMember(d => d.Content, m => m.MapFrom(_ => ""));
CreateMap<Article, ArticleManageDto>();
}
}
}