DocSpace-buildtools/common/ASC.Core.Common/EF/Model/Resource/ResCultures.cs

86 lines
3.0 KiB
C#
Raw Normal View History

2020-08-21 02:34:37 +00:00
using Microsoft.EntityFrameworkCore;
2020-10-12 16:23:15 +00:00
2020-08-21 02:34:37 +00:00
using System;
2019-12-16 09:30:01 +00:00
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace ASC.Core.Common.EF.Model.Resource
{
[Table("res_cultures")]
public class ResCultures
{
[Key]
public string Title { get; set; }
public string Value { get; set; }
public bool Available { get; set; }
public DateTime CreationDate { get; set; }
}
2020-08-21 02:34:37 +00:00
public static class ResCulturesExtension
{
2020-09-06 22:49:03 +00:00
public static ModelBuilderWrapper AddResCultures(this ModelBuilderWrapper modelBuilder)
{
2020-10-10 11:35:05 +00:00
_ = modelBuilder
2020-09-06 22:49:03 +00:00
.Add(MySqlAddResCultures, Provider.MySql)
2020-10-08 09:07:05 +00:00
.Add(PgSqlAddResCultures, Provider.Postgre);
2020-09-06 22:49:03 +00:00
return modelBuilder;
}
public static void MySqlAddResCultures(this ModelBuilder modelBuilder)
2020-08-21 02:34:37 +00:00
{
2020-10-10 11:35:05 +00:00
_ = modelBuilder.Entity<ResCultures>(entity =>
2020-08-21 02:34:37 +00:00
{
2020-10-10 11:35:05 +00:00
_ = entity.HasKey(e => e.Title)
2020-08-21 02:34:37 +00:00
.HasName("PRIMARY");
2020-10-10 11:35:05 +00:00
_ = entity.ToTable("res_cultures");
2020-08-21 02:34:37 +00:00
2020-10-10 11:35:05 +00:00
_ = entity.Property(e => e.Title)
2020-08-21 02:34:37 +00:00
.HasColumnName("title")
.HasColumnType("varchar(120)")
.HasCharSet("utf8")
.HasCollation("utf8_general_ci");
2020-10-10 11:35:05 +00:00
_ = entity.Property(e => e.Available).HasColumnName("available");
2020-08-21 02:34:37 +00:00
2020-10-10 11:35:05 +00:00
_ = entity.Property(e => e.CreationDate)
2020-08-21 02:34:37 +00:00
.HasColumnName("creationDate")
.HasColumnType("timestamp")
.HasDefaultValueSql("CURRENT_TIMESTAMP");
2020-10-10 11:35:05 +00:00
_ = entity.Property(e => e.Value)
2020-08-21 02:34:37 +00:00
.IsRequired()
.HasColumnName("value")
.HasColumnType("varchar(120)")
.HasCharSet("utf8")
.HasCollation("utf8_general_ci");
});
}
2020-09-06 22:49:03 +00:00
public static void PgSqlAddResCultures(this ModelBuilder modelBuilder)
2020-08-21 02:34:37 +00:00
{
2020-10-10 11:35:05 +00:00
_ = modelBuilder.Entity<ResCultures>(entity =>
2020-08-21 02:34:37 +00:00
{
2020-10-10 11:35:05 +00:00
_ = entity.HasKey(e => e.Title)
2020-08-21 02:34:37 +00:00
.HasName("res_cultures_pkey");
2020-10-10 11:35:05 +00:00
_ = entity.ToTable("res_cultures", "onlyoffice");
2020-08-21 02:34:37 +00:00
2020-10-10 11:35:05 +00:00
_ = entity.Property(e => e.Title)
2020-08-21 02:34:37 +00:00
.HasColumnName("title")
.HasColumnType("character varying");
2020-10-10 11:35:05 +00:00
_ = entity.Property(e => e.Available)
2020-08-21 02:34:37 +00:00
.HasColumnName("available")
2020-09-06 22:49:03 +00:00
.HasDefaultValueSql("'0'");
2020-08-21 02:34:37 +00:00
2020-10-10 11:35:05 +00:00
_ = entity.Property(e => e.CreationDate)
2020-08-21 02:34:37 +00:00
.HasColumnName("creationDate")
.HasDefaultValueSql("CURRENT_TIMESTAMP");
2020-10-10 11:35:05 +00:00
_ = entity.Property(e => e.Value)
2020-08-21 02:34:37 +00:00
.IsRequired()
.HasColumnName("value")
.HasColumnType("character varying");
});
}
}
2019-12-16 09:30:01 +00:00
}