diff options
author | crupest <crupest@outlook.com> | 2020-03-06 19:42:07 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-06 19:42:07 +0800 |
commit | eb9554b4fe78eaced12329e7fd7d8d62a58a1c6c (patch) | |
tree | 8940de95d235020bbfc1b204cc572eeb47158d40 /Timeline/Entities | |
parent | 3f5b4840ff863bed5fd11beb775d02447f022030 (diff) | |
parent | cc57bddf48fee422850c8b458ac9a22ba0bfaa64 (diff) | |
download | timeline-eb9554b4fe78eaced12329e7fd7d8d62a58a1c6c.tar.gz timeline-eb9554b4fe78eaced12329e7fd7d8d62a58a1c6c.tar.bz2 timeline-eb9554b4fe78eaced12329e7fd7d8d62a58a1c6c.zip |
Merge pull request #68 from crupest/file
Unify data store.
Diffstat (limited to 'Timeline/Entities')
-rw-r--r-- | Timeline/Entities/DataEntity.cs | 23 | ||||
-rw-r--r-- | Timeline/Entities/DatabaseContext.cs | 2 | ||||
-rw-r--r-- | Timeline/Entities/UserAvatarEntity.cs | 7 |
3 files changed, 27 insertions, 5 deletions
diff --git a/Timeline/Entities/DataEntity.cs b/Timeline/Entities/DataEntity.cs new file mode 100644 index 00000000..b21e2dbf --- /dev/null +++ b/Timeline/Entities/DataEntity.cs @@ -0,0 +1,23 @@ +using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
+
+namespace Timeline.Entities
+{
+ [Table("data")]
+ public class DataEntity
+ {
+ [Column("id"), Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
+ public long Id { get; set; }
+
+ [Column("tag"), Required]
+ public string Tag { get; set; } = default!;
+
+ [Column("data"), Required]
+#pragma warning disable CA1819 // Properties should not return arrays
+ public byte[] Data { get; set; } = default!;
+#pragma warning restore CA1819 // Properties should not return arrays
+
+ [Column("ref"), Required]
+ public int Ref { get; set; }
+ }
+}
diff --git a/Timeline/Entities/DatabaseContext.cs b/Timeline/Entities/DatabaseContext.cs index 039cbd51..8899308c 100644 --- a/Timeline/Entities/DatabaseContext.cs +++ b/Timeline/Entities/DatabaseContext.cs @@ -13,6 +13,7 @@ namespace Timeline.Entities {
modelBuilder.Entity<UserEntity>().Property(e => e.Version).HasDefaultValue(0);
modelBuilder.Entity<UserEntity>().HasIndex(e => e.Username).IsUnique();
+ modelBuilder.Entity<DataEntity>().HasIndex(e => e.Tag).IsUnique();
}
public DbSet<UserEntity> Users { get; set; } = default!;
@@ -21,5 +22,6 @@ namespace Timeline.Entities public DbSet<TimelinePostEntity> TimelinePosts { get; set; } = default!;
public DbSet<TimelineMemberEntity> TimelineMembers { get; set; } = default!;
public DbSet<JwtTokenEntity> JwtToken { get; set; } = default!;
+ public DbSet<DataEntity> Data { get; set; } = default!;
}
}
diff --git a/Timeline/Entities/UserAvatarEntity.cs b/Timeline/Entities/UserAvatarEntity.cs index be094a77..3c2720f7 100644 --- a/Timeline/Entities/UserAvatarEntity.cs +++ b/Timeline/Entities/UserAvatarEntity.cs @@ -11,15 +11,12 @@ namespace Timeline.Entities [Column("id"), Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public long Id { get; set; }
- [Column("data")]
- public byte[]? Data { get; set; }
+ [Column("data_tag")]
+ public string? DataTag { get; set; }
[Column("type")]
public string? Type { get; set; }
- [Column("etag")]
- public string? ETag { get; set; }
-
[Column("last_modified"), Required]
public DateTime LastModified { get; set; }
|