diff --git a/BlogPlatform/BlogPlatform/BlogPlatformDbContext.cs b/BlogPlatform/BlogPlatform/BlogPlatformDbContext.cs new file mode 100644 index 0000000..7381616 --- /dev/null +++ b/BlogPlatform/BlogPlatform/BlogPlatformDbContext.cs @@ -0,0 +1,44 @@ +using BlogPlatform.Models; + +namespace BlogPlatform; + +using Microsoft.EntityFrameworkCore; + + +public class BlogPlatformDbContext: DbContext +{ + public DbSet Comments { get; set; } + public DbSet Posts { get; set; } + public DbSet Users { get; set; } + + + protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) + { + string connectionString = + "Server=romaric-thibault.fr;" + + "Database=BlogPlatform_cristiano;" + + "User Id=cristiano;" + + "Password=Onto9-Cage-Afflicted;" + + "TrustServerCertificate=True"; + + optionsBuilder.UseSqlServer(connectionString); + } + + protected override void OnModelCreating(ModelBuilder modelBuilder) + { + modelBuilder.Entity() + .Property(comment => comment.CreatedAt) + .HasDefaultValueSql("getdate()") + .ValueGeneratedOnAdd(); + + modelBuilder.Entity() + .Property(post => post.CreatedAt) + .HasDefaultValueSql("getdate()") + .ValueGeneratedOnAdd(); + + modelBuilder.Entity() + .Property(user => user.CreatedAt) + .HasDefaultValueSql("getdate()") + .ValueGeneratedOnAdd(); + } +} \ No newline at end of file diff --git a/BlogPlatform/BlogPlatform/Models/Comment.cs b/BlogPlatform/BlogPlatform/Models/Comment.cs index eea75fe..f63d044 100644 --- a/BlogPlatform/BlogPlatform/Models/Comment.cs +++ b/BlogPlatform/BlogPlatform/Models/Comment.cs @@ -7,4 +7,10 @@ public class Comment [Key] public int Id { get; set; } [Required, Length(1,500)] public string? Content { get; set; } public DateOnly CreatedAt { get; set; } + + [Required] public int PostId{ get; set; } + public Post? Post{ get; set; } + + [Required] public int UserId { get; set; } + public User? User{ get; set; } } \ No newline at end of file diff --git a/BlogPlatform/BlogPlatform/Models/Post.cs b/BlogPlatform/BlogPlatform/Models/Post.cs index 8a73ec9..0311aa9 100644 --- a/BlogPlatform/BlogPlatform/Models/Post.cs +++ b/BlogPlatform/BlogPlatform/Models/Post.cs @@ -9,4 +9,9 @@ public class Post [Required] public string? Content { get; set; } [Required] public int Likes { get; set; } public DateOnly CreatedAt { get; set; } + + public List? Comments { get; set; } + + [Required] public int UserId { get; set; } + public User? User{ get; set; } } \ No newline at end of file diff --git a/BlogPlatform/BlogPlatform/Models/User.cs b/BlogPlatform/BlogPlatform/Models/User.cs index 8c3ccd6..18dd138 100644 --- a/BlogPlatform/BlogPlatform/Models/User.cs +++ b/BlogPlatform/BlogPlatform/Models/User.cs @@ -11,5 +11,6 @@ public class User [Required,Length(24,24)] public string? Salt { get; set; } public DateOnly CreatedAt { get; set; } - + public List? Comments { get; set; } + public List? Posts { get; set; } } \ No newline at end of file