25 lines
No EOL
699 B
C#
25 lines
No EOL
699 B
C#
using Femto.Common.Domain;
|
|
using Femto.Modules.Blog.Domain.Posts.Events;
|
|
using Femto.Modules.Blog.Domain.Posts.Rules;
|
|
|
|
namespace Femto.Modules.Blog.Domain.Posts;
|
|
|
|
internal class Post : Entity
|
|
{
|
|
public Guid Id { get; private set; }
|
|
public Guid AuthorId { get; private set; }
|
|
public string Content { get; private set; } = null!;
|
|
public IList<PostMedia> Media { get; private set; }
|
|
|
|
private Post() { }
|
|
|
|
public Post(Guid authorId,string content, IList<PostMedia> media)
|
|
{
|
|
this.Id = Guid.CreateVersion7();
|
|
this.AuthorId = authorId;
|
|
this.Content = content;
|
|
this.Media = media;
|
|
|
|
this.AddDomainEvent(new PostCreated(this));
|
|
}
|
|
} |