From d8f8589a051dea1920b7ca2f415d6a21e5e0f4ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ahmet=20=C3=87otur?= Date: Thu, 19 Mar 2020 19:42:37 +0300 Subject: [PATCH 1/5] etos' implemented --- .../Volo.Blogging.Domain.csproj | 1 + .../Blogging/BloggingDomainMappingProfile.cs | 19 ++++++++++++ .../Volo/Blogging/BloggingDomainModule.cs | 16 +++++++++- .../Volo/Blogging/Blogs/BlogEto.cs | 19 ++++++++++++ .../Volo/Blogging/Comments/CommentEto.cs | 15 ++++++++++ .../Volo/Blogging/Posts/PostEto.cs | 29 +++++++++++++++++++ .../Volo/Blogging/Tagging/TagEto.cs | 19 ++++++++++++ 7 files changed, 117 insertions(+), 1 deletion(-) create mode 100644 modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/BloggingDomainMappingProfile.cs create mode 100644 modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Blogs/BlogEto.cs create mode 100644 modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Comments/CommentEto.cs create mode 100644 modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Posts/PostEto.cs create mode 100644 modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Tagging/TagEto.cs diff --git a/modules/blogging/src/Volo.Blogging.Domain/Volo.Blogging.Domain.csproj b/modules/blogging/src/Volo.Blogging.Domain/Volo.Blogging.Domain.csproj index a7cbc2c7c6..73cf0498c5 100644 --- a/modules/blogging/src/Volo.Blogging.Domain/Volo.Blogging.Domain.csproj +++ b/modules/blogging/src/Volo.Blogging.Domain/Volo.Blogging.Domain.csproj @@ -13,6 +13,7 @@ + diff --git a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/BloggingDomainMappingProfile.cs b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/BloggingDomainMappingProfile.cs new file mode 100644 index 0000000000..da36b39049 --- /dev/null +++ b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/BloggingDomainMappingProfile.cs @@ -0,0 +1,19 @@ +using AutoMapper; +using Volo.Blogging.Blogs; +using Volo.Blogging.Comments; +using Volo.Blogging.Posts; +using Volo.Blogging.Tagging; + +namespace Volo.Blogging +{ + public class BloggingDomainMappingProfile : Profile + { + public BloggingDomainMappingProfile() + { + CreateMap(); + CreateMap(); + CreateMap(); + CreateMap(); + } + } +} \ No newline at end of file diff --git a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/BloggingDomainModule.cs b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/BloggingDomainModule.cs index 4690546a7e..5a853cf894 100644 --- a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/BloggingDomainModule.cs +++ b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/BloggingDomainModule.cs @@ -1,5 +1,10 @@ using Volo.Abp.Domain; +using Volo.Abp.EventBus.Distributed; using Volo.Abp.Modularity; +using Volo.Blogging.Blogs; +using Volo.Blogging.Comments; +using Volo.Blogging.Posts; +using Volo.Blogging.Tagging; namespace Volo.Blogging { @@ -8,6 +13,15 @@ namespace Volo.Blogging typeof(AbpDddDomainModule))] public class BloggingDomainModule : AbpModule { - + public override void ConfigureServices(ServiceConfigurationContext context) + { + Configure(options => + { + options.EtoMappings.Add(); + options.EtoMappings.Add(); + options.EtoMappings.Add(); + options.EtoMappings.Add(); + }); + } } } diff --git a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Blogs/BlogEto.cs b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Blogs/BlogEto.cs new file mode 100644 index 0000000000..3fb3af4e08 --- /dev/null +++ b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Blogs/BlogEto.cs @@ -0,0 +1,19 @@ +using System; +using JetBrains.Annotations; + +namespace Volo.Blogging.Blogs +{ + public class BlogEto + { + public Guid Id { get; set; } + + [NotNull] + public string Name { get; set; } + + [NotNull] + public string ShortName { get; set; } + + [CanBeNull] + public string Description { get; set; } + } +} \ No newline at end of file diff --git a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Comments/CommentEto.cs b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Comments/CommentEto.cs new file mode 100644 index 0000000000..fff54780be --- /dev/null +++ b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Comments/CommentEto.cs @@ -0,0 +1,15 @@ +using System; + +namespace Volo.Blogging.Comments +{ + public class CommentEto + { + public Guid Id { get; set; } + + public Guid PostId { get; set; } + + public Guid? RepliedCommentId { get; set; } + + public string Text { get; set; } + } +} \ No newline at end of file diff --git a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Posts/PostEto.cs b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Posts/PostEto.cs new file mode 100644 index 0000000000..d3ef0d0f76 --- /dev/null +++ b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Posts/PostEto.cs @@ -0,0 +1,29 @@ +using JetBrains.Annotations; +using System; +using System.Collections.Generic; + +namespace Volo.Blogging.Posts +{ + public class PostEto + { + public Guid Id { get; set; } + + public Guid BlogId { get; set; } + + [NotNull] + public string Url { get; set; } + + [NotNull] + public string CoverImage { get; set; } + + [NotNull] + public string Title { get; set; } + + [CanBeNull] + public string Content { get; set; } + + public int ReadCount { get; set; } + + public ICollection Tags { get; set; } + } +} \ No newline at end of file diff --git a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Tagging/TagEto.cs b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Tagging/TagEto.cs new file mode 100644 index 0000000000..3a83631885 --- /dev/null +++ b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Tagging/TagEto.cs @@ -0,0 +1,19 @@ +using System; +using JetBrains.Annotations; + +namespace Volo.Blogging.Tagging +{ + public class TagEto + { + public Guid Id { get; set; } + + public Guid BlogId { get; set; } + + [NotNull] + public string Name { get; set; } + + public string Description { get; set; } + + public int UsageCount { get; set; } + } +} \ No newline at end of file From 7c8166ce379f24d02c8c792be2f595717bd6fca4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ahmet=20=C3=87otur?= Date: Thu, 19 Mar 2020 19:49:47 +0300 Subject: [PATCH 2/5] Update BloggingDomainModule.cs --- .../Volo/Blogging/BloggingDomainModule.cs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/BloggingDomainModule.cs b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/BloggingDomainModule.cs index 5a853cf894..81c3cd3a3c 100644 --- a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/BloggingDomainModule.cs +++ b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/BloggingDomainModule.cs @@ -1,4 +1,5 @@ -using Volo.Abp.Domain; +using Volo.Abp.AutoMapper; +using Volo.Abp.Domain; using Volo.Abp.EventBus.Distributed; using Volo.Abp.Modularity; using Volo.Blogging.Blogs; @@ -22,6 +23,11 @@ namespace Volo.Blogging options.EtoMappings.Add(); options.EtoMappings.Add(); }); + + Configure(options => + { + options.AddProfile(validate: true); + }); } } } From 47fb18c19871d849d3aace070cdabeb45d0fa3f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ahmet=20=C3=87otur?= Date: Thu, 19 Mar 2020 19:56:40 +0300 Subject: [PATCH 3/5] put files in correct place --- .../Volo/Blogging/Blogs/BlogEto.cs | 0 .../Volo/Blogging/Comments/CommentEto.cs | 0 .../Volo/Blogging/Posts/PostEto.cs | 0 .../Volo/Blogging/Tagging/TagEto.cs | 0 4 files changed, 0 insertions(+), 0 deletions(-) rename modules/blogging/src/{Volo.Blogging.Domain => Volo.Blogging.Domain.Shared}/Volo/Blogging/Blogs/BlogEto.cs (100%) rename modules/blogging/src/{Volo.Blogging.Domain => Volo.Blogging.Domain.Shared}/Volo/Blogging/Comments/CommentEto.cs (100%) rename modules/blogging/src/{Volo.Blogging.Domain => Volo.Blogging.Domain.Shared}/Volo/Blogging/Posts/PostEto.cs (100%) rename modules/blogging/src/{Volo.Blogging.Domain => Volo.Blogging.Domain.Shared}/Volo/Blogging/Tagging/TagEto.cs (100%) diff --git a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Blogs/BlogEto.cs b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Blogs/BlogEto.cs similarity index 100% rename from modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Blogs/BlogEto.cs rename to modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Blogs/BlogEto.cs diff --git a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Comments/CommentEto.cs b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Comments/CommentEto.cs similarity index 100% rename from modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Comments/CommentEto.cs rename to modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Comments/CommentEto.cs diff --git a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Posts/PostEto.cs b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Posts/PostEto.cs similarity index 100% rename from modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Posts/PostEto.cs rename to modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Posts/PostEto.cs diff --git a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Tagging/TagEto.cs b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Tagging/TagEto.cs similarity index 100% rename from modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/Tagging/TagEto.cs rename to modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Tagging/TagEto.cs From d56e1613b592c8b3da63f34fef737780e9336160 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ahmet=20=C3=87otur?= Date: Thu, 19 Mar 2020 19:58:30 +0300 Subject: [PATCH 4/5] Update PostEto.cs --- .../Volo.Blogging.Domain.Shared/Volo/Blogging/Posts/PostEto.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Posts/PostEto.cs b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Posts/PostEto.cs index d3ef0d0f76..d01293b025 100644 --- a/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Posts/PostEto.cs +++ b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Posts/PostEto.cs @@ -1,6 +1,7 @@ using JetBrains.Annotations; using System; using System.Collections.Generic; +using Volo.Blogging.Tagging; namespace Volo.Blogging.Posts { @@ -24,6 +25,6 @@ namespace Volo.Blogging.Posts public int ReadCount { get; set; } - public ICollection Tags { get; set; } + public ICollection Tags { get; set; } } } \ No newline at end of file From 5a68a226e1da18fa5a77f3847afed24ed4fc2b74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ahmet=20=C3=87otur?= Date: Fri, 20 Mar 2020 14:55:02 +0300 Subject: [PATCH 5/5] eto's and mapping updated --- .../Volo/Blogging/Blogs/BlogEto.cs | 1 + .../Volo/Blogging/Comments/CommentEto.cs | 1 + .../Volo/Blogging/Posts/PostEto.cs | 3 +-- .../Volo/Blogging/Tagging/TagEto.cs | 1 + .../Volo/Blogging/BloggingDomainModule.cs | 22 +++++++++++-------- 5 files changed, 17 insertions(+), 11 deletions(-) diff --git a/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Blogs/BlogEto.cs b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Blogs/BlogEto.cs index 3fb3af4e08..ceb0b977cf 100644 --- a/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Blogs/BlogEto.cs +++ b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Blogs/BlogEto.cs @@ -3,6 +3,7 @@ using JetBrains.Annotations; namespace Volo.Blogging.Blogs { + [Serializable] public class BlogEto { public Guid Id { get; set; } diff --git a/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Comments/CommentEto.cs b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Comments/CommentEto.cs index fff54780be..dd1b5ccb41 100644 --- a/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Comments/CommentEto.cs +++ b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Comments/CommentEto.cs @@ -2,6 +2,7 @@ namespace Volo.Blogging.Comments { + [Serializable] public class CommentEto { public Guid Id { get; set; } diff --git a/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Posts/PostEto.cs b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Posts/PostEto.cs index d01293b025..90a88833c7 100644 --- a/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Posts/PostEto.cs +++ b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Posts/PostEto.cs @@ -5,6 +5,7 @@ using Volo.Blogging.Tagging; namespace Volo.Blogging.Posts { + [Serializable] public class PostEto { public Guid Id { get; set; } @@ -24,7 +25,5 @@ namespace Volo.Blogging.Posts public string Content { get; set; } public int ReadCount { get; set; } - - public ICollection Tags { get; set; } } } \ No newline at end of file diff --git a/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Tagging/TagEto.cs b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Tagging/TagEto.cs index 3a83631885..0f461a0281 100644 --- a/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Tagging/TagEto.cs +++ b/modules/blogging/src/Volo.Blogging.Domain.Shared/Volo/Blogging/Tagging/TagEto.cs @@ -3,6 +3,7 @@ using JetBrains.Annotations; namespace Volo.Blogging.Tagging { + [Serializable] public class TagEto { public Guid Id { get; set; } diff --git a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/BloggingDomainModule.cs b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/BloggingDomainModule.cs index 81c3cd3a3c..f39c4c88fb 100644 --- a/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/BloggingDomainModule.cs +++ b/modules/blogging/src/Volo.Blogging.Domain/Volo/Blogging/BloggingDomainModule.cs @@ -1,4 +1,5 @@ -using Volo.Abp.AutoMapper; +using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.AutoMapper; using Volo.Abp.Domain; using Volo.Abp.EventBus.Distributed; using Volo.Abp.Modularity; @@ -11,23 +12,26 @@ namespace Volo.Blogging { [DependsOn( typeof(BloggingDomainSharedModule), - typeof(AbpDddDomainModule))] + typeof(AbpDddDomainModule), + typeof(AbpAutoMapperModule))] public class BloggingDomainModule : AbpModule { public override void ConfigureServices(ServiceConfigurationContext context) { - Configure(options => - { - options.EtoMappings.Add(); - options.EtoMappings.Add(); - options.EtoMappings.Add(); - options.EtoMappings.Add(); - }); + context.Services.AddAutoMapperObjectMapper(); Configure(options => { options.AddProfile(validate: true); }); + + Configure(options => + { + options.EtoMappings.Add(typeof(BloggingDomainModule)); + options.EtoMappings.Add(typeof(BloggingDomainModule)); + options.EtoMappings.Add(typeof(BloggingDomainModule)); + options.EtoMappings.Add(typeof(BloggingDomainModule)); + }); } } }