aboutsummaryrefslogtreecommitdiff
path: root/Timeline/Entities/DatabaseContext.cs
diff options
context:
space:
mode:
author杨宇千 <crupest@outlook.com>2019-08-05 18:58:56 +0800
committer杨宇千 <crupest@outlook.com>2019-08-05 18:58:56 +0800
commitdc1ab11cea249f4ca967f86b115147a63f7c93a5 (patch)
treeb5f26eabcfa547e76dd7e70ffe0763f3fadf0ad5 /Timeline/Entities/DatabaseContext.cs
parent5f5458518df0475fa36af754cae52eb31eb92fa3 (diff)
downloadtimeline-dc1ab11cea249f4ca967f86b115147a63f7c93a5.tar.gz
timeline-dc1ab11cea249f4ca967f86b115147a63f7c93a5.tar.bz2
timeline-dc1ab11cea249f4ca967f86b115147a63f7c93a5.zip
3 things.
1. Exchange Models and Entities namespace. 2. Fix the bug that input with missing field leads to 500. 3. Write unit tests.
Diffstat (limited to 'Timeline/Entities/DatabaseContext.cs')
-rw-r--r--Timeline/Entities/DatabaseContext.cs42
1 files changed, 42 insertions, 0 deletions
diff --git a/Timeline/Entities/DatabaseContext.cs b/Timeline/Entities/DatabaseContext.cs
new file mode 100644
index 00000000..9fe046ac
--- /dev/null
+++ b/Timeline/Entities/DatabaseContext.cs
@@ -0,0 +1,42 @@
+using Microsoft.EntityFrameworkCore;
+using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
+
+namespace Timeline.Entities
+{
+ public static class UserRoles
+ {
+ public const string Admin = "admin";
+ public const string User = "user";
+ }
+
+ [Table("user")]
+ public class User
+ {
+ [Column("id"), Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
+ public long Id { get; set; }
+
+ [Column("name"), Required]
+ public string Name { get; set; }
+
+ [Column("password"), Required]
+ public string EncryptedPassword { get; set; }
+
+ [Column("roles"), Required]
+ public string RoleString { get; set; }
+
+ [Column("version"), Required]
+ public long Version { get; set; }
+ }
+
+ public class DatabaseContext : DbContext
+ {
+ public DatabaseContext(DbContextOptions<DatabaseContext> options)
+ : base(options)
+ {
+
+ }
+
+ public DbSet<User> Users { get; set; }
+ }
+}