public class Post
{
public int Id { get; set; }
public PostType Type { get; set; }
public int? ParentId { get; set; }
public virtual Post Parent { get; set; }
[InverseProperty("Parent")]
public virtual ICollection<Post> Answers { get; set; }
public int? AcceptedAnswerId { get; set; }
public virtual Post AcceptedAnswer { get; set; }
public int UserId { get; set; }
public User User { get; set; }
[StringLength(255)]
public string Title { get; set; }
[Column(TypeName = "text")]
public string Body { get; set; }
public virtual ICollection<Tag> Tags { get; set; }
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
public Post()
{
Tags = new HashSet<Tag>();
Answers = new HashSet<Post>();
}
}
public class Post
{
public int Id { get; set; }
public PostType Type { get; set; }
public int? ParentId { get; set; }
public virtual Post Parent { get; set; }
[InverseProperty("Parent")]
public virtual ICollection<Post> Answers { get; set; }
public int? AcceptedAnswerId { get; set; }
public virtual Post AcceptedAnswer { get; set; }
public int UserId { get; set; }
public User User { get; set; }
[StringLength(255)]
public string Title { get; set; }
[Column(TypeName = "text")]
public string Body { get; set; }
public virtual ICollection<Tag> Tags { get; set; }
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
public Post()
{
Tags = new HashSet<Tag>();
Answers = new HashSet<Post>();
}
}