diff --git a/modules/docs/Volo.Docs.sln b/modules/docs/Volo.Docs.sln
index 74e748ac9ba..1c32767baad 100644
--- a/modules/docs/Volo.Docs.sln
+++ b/modules/docs/Volo.Docs.sln
@@ -57,9 +57,9 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "VoloDocs.Web", "app\VoloDoc
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "VoloDocs.Migrator", "app\VoloDocs.Migrator\VoloDocs.Migrator.csproj", "{8A5E5001-C017-44A8-ADDA-DC66C102556E}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Docs.MongoDB", "src\Volo.Docs.MongoDB\Volo.Docs.MongoDB.csproj", "{DBE846CD-1BED-4F2C-ABF2-94F6240BCB9B}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Docs.MongoDB", "src\Volo.Docs.MongoDB\Volo.Docs.MongoDB.csproj", "{DBE846CD-1BED-4F2C-ABF2-94F6240BCB9B}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Docs.MongoDB.Tests", "test\Volo.Docs.MongoDB.Tests\Volo.Docs.MongoDB.Tests.csproj", "{C5E2A2A3-D54D-4C2E-97BA-EA50A49ED7AD}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Docs.MongoDB.Tests", "test\Volo.Docs.MongoDB.Tests\Volo.Docs.MongoDB.Tests.csproj", "{C5E2A2A3-D54D-4C2E-97BA-EA50A49ED7AD}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
diff --git a/modules/docs/app/VoloDocs.EntityFrameworkCore/Migrations/20181225134002_Initial20181225.Designer.cs b/modules/docs/app/VoloDocs.EntityFrameworkCore/Migrations/20181225134002_Initial20181225.Designer.cs
deleted file mode 100644
index ab8c782832b..00000000000
--- a/modules/docs/app/VoloDocs.EntityFrameworkCore/Migrations/20181225134002_Initial20181225.Designer.cs
+++ /dev/null
@@ -1,465 +0,0 @@
-//
-using System;
-using Microsoft.EntityFrameworkCore;
-using Microsoft.EntityFrameworkCore.Infrastructure;
-using Microsoft.EntityFrameworkCore.Metadata;
-using Microsoft.EntityFrameworkCore.Migrations;
-using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
-using VoloDocs.EntityFrameworkCore;
-
-namespace VoloDocs.EntityFrameworkCore.Migrations
-{
- [DbContext(typeof(VoloDocsDbContext))]
- [Migration("20181225134002_Initial20181225")]
- partial class Initial20181225
- {
- protected override void BuildTargetModel(ModelBuilder modelBuilder)
- {
-#pragma warning disable 612, 618
- modelBuilder
- .HasAnnotation("ProductVersion", "2.1.1-rtm-30846")
- .HasAnnotation("Relational:MaxIdentifierLength", 128)
- .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityClaimType", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd();
-
- b.Property("ConcurrencyStamp")
- .IsConcurrencyToken()
- .IsRequired()
- .HasColumnName("ConcurrencyStamp")
- .HasMaxLength(256);
-
- b.Property("Description")
- .HasMaxLength(256);
-
- b.Property("ExtraProperties")
- .HasColumnName("ExtraProperties");
-
- b.Property("IsStatic");
-
- b.Property("Name")
- .IsRequired()
- .HasMaxLength(256);
-
- b.Property("Regex")
- .HasMaxLength(512);
-
- b.Property("RegexDescription")
- .HasMaxLength(128);
-
- b.Property("Required");
-
- b.Property("ValueType");
-
- b.HasKey("Id");
-
- b.ToTable("AbpClaimTypes");
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityRole", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd();
-
- b.Property("ConcurrencyStamp")
- .IsConcurrencyToken()
- .IsRequired()
- .HasColumnName("ConcurrencyStamp")
- .HasMaxLength(256);
-
- b.Property("ExtraProperties")
- .HasColumnName("ExtraProperties");
-
- b.Property("IsDefault")
- .HasColumnName("IsDefault");
-
- b.Property("IsPublic")
- .HasColumnName("IsPublic");
-
- b.Property("IsStatic")
- .HasColumnName("IsStatic");
-
- b.Property("Name")
- .IsRequired()
- .HasMaxLength(256);
-
- b.Property("NormalizedName")
- .IsRequired()
- .HasMaxLength(256);
-
- b.Property("TenantId");
-
- b.HasKey("Id");
-
- b.HasIndex("NormalizedName");
-
- b.ToTable("AbpRoles");
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityRoleClaim", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd();
-
- b.Property("ClaimType")
- .IsRequired()
- .HasMaxLength(256);
-
- b.Property("ClaimValue")
- .HasMaxLength(1024);
-
- b.Property("RoleId");
-
- b.Property("TenantId");
-
- b.HasKey("Id");
-
- b.HasIndex("RoleId");
-
- b.ToTable("AbpRoleClaims");
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityUser", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd();
-
- b.Property("AccessFailedCount")
- .ValueGeneratedOnAdd()
- .HasColumnName("AccessFailedCount")
- .HasDefaultValue(0);
-
- b.Property("ConcurrencyStamp")
- .IsConcurrencyToken()
- .HasColumnName("ConcurrencyStamp");
-
- b.Property("CreationTime")
- .HasColumnName("CreationTime");
-
- b.Property("CreatorId")
- .HasColumnName("CreatorId");
-
- b.Property("DeleterId")
- .HasColumnName("DeleterId");
-
- b.Property("DeletionTime")
- .HasColumnName("DeletionTime");
-
- b.Property("Email")
- .HasColumnName("Email")
- .HasMaxLength(256);
-
- b.Property("EmailConfirmed")
- .ValueGeneratedOnAdd()
- .HasColumnName("EmailConfirmed")
- .HasDefaultValue(false);
-
- b.Property("ExtraProperties")
- .HasColumnName("ExtraProperties");
-
- b.Property("IsDeleted")
- .ValueGeneratedOnAdd()
- .HasColumnName("IsDeleted")
- .HasDefaultValue(false);
-
- b.Property("LastModificationTime")
- .HasColumnName("LastModificationTime");
-
- b.Property("LastModifierId")
- .HasColumnName("LastModifierId");
-
- b.Property("LockoutEnabled")
- .ValueGeneratedOnAdd()
- .HasColumnName("LockoutEnabled")
- .HasDefaultValue(false);
-
- b.Property("LockoutEnd");
-
- b.Property("Name")
- .HasColumnName("Name")
- .HasMaxLength(64);
-
- b.Property("NormalizedEmail")
- .HasColumnName("NormalizedEmail")
- .HasMaxLength(256);
-
- b.Property("NormalizedUserName")
- .IsRequired()
- .HasColumnName("NormalizedUserName")
- .HasMaxLength(256);
-
- b.Property("PasswordHash")
- .HasColumnName("PasswordHash")
- .HasMaxLength(256);
-
- b.Property("PhoneNumber")
- .HasColumnName("PhoneNumber")
- .HasMaxLength(16);
-
- b.Property("PhoneNumberConfirmed")
- .ValueGeneratedOnAdd()
- .HasColumnName("PhoneNumberConfirmed")
- .HasDefaultValue(false);
-
- b.Property("SecurityStamp")
- .IsRequired()
- .HasColumnName("SecurityStamp")
- .HasMaxLength(256);
-
- b.Property("Surname")
- .HasColumnName("Surname")
- .HasMaxLength(64);
-
- b.Property("TenantId")
- .HasColumnName("TenantId");
-
- b.Property("TwoFactorEnabled")
- .ValueGeneratedOnAdd()
- .HasColumnName("TwoFactorEnabled")
- .HasDefaultValue(false);
-
- b.Property("UserName")
- .IsRequired()
- .HasColumnName("UserName")
- .HasMaxLength(256);
-
- b.HasKey("Id");
-
- b.HasIndex("Email");
-
- b.HasIndex("NormalizedEmail");
-
- b.HasIndex("NormalizedUserName");
-
- b.HasIndex("UserName");
-
- b.ToTable("AbpUsers");
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityUserClaim", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd();
-
- b.Property("ClaimType")
- .IsRequired()
- .HasMaxLength(256);
-
- b.Property("ClaimValue")
- .HasMaxLength(1024);
-
- b.Property("TenantId");
-
- b.Property("UserId");
-
- b.HasKey("Id");
-
- b.HasIndex("UserId");
-
- b.ToTable("AbpUserClaims");
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityUserLogin", b =>
- {
- b.Property("UserId");
-
- b.Property("LoginProvider")
- .HasMaxLength(64);
-
- b.Property("ProviderDisplayName")
- .HasMaxLength(128);
-
- b.Property("ProviderKey")
- .IsRequired()
- .HasMaxLength(196);
-
- b.Property("TenantId");
-
- b.HasKey("UserId", "LoginProvider");
-
- b.HasIndex("LoginProvider", "ProviderKey");
-
- b.ToTable("AbpUserLogins");
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityUserRole", b =>
- {
- b.Property("UserId");
-
- b.Property("RoleId");
-
- b.Property("TenantId");
-
- b.HasKey("UserId", "RoleId");
-
- b.HasIndex("RoleId", "UserId");
-
- b.ToTable("AbpUserRoles");
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityUserToken", b =>
- {
- b.Property("UserId");
-
- b.Property("LoginProvider")
- .HasMaxLength(64);
-
- b.Property("Name")
- .HasMaxLength(128);
-
- b.Property("TenantId");
-
- b.Property("Value");
-
- b.HasKey("UserId", "LoginProvider", "Name");
-
- b.ToTable("AbpUserTokens");
- });
-
- modelBuilder.Entity("Volo.Abp.PermissionManagement.PermissionGrant", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd();
-
- b.Property("Name")
- .IsRequired()
- .HasMaxLength(128);
-
- b.Property("ProviderKey")
- .IsRequired()
- .HasMaxLength(64);
-
- b.Property("ProviderName")
- .IsRequired()
- .HasMaxLength(64);
-
- b.Property("TenantId");
-
- b.HasKey("Id");
-
- b.HasIndex("Name", "ProviderName", "ProviderKey");
-
- b.ToTable("AbpPermissionGrants");
- });
-
- modelBuilder.Entity("Volo.Abp.SettingManagement.Setting", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd();
-
- b.Property("Name")
- .IsRequired()
- .HasMaxLength(128);
-
- b.Property("ProviderKey")
- .HasMaxLength(64);
-
- b.Property("ProviderName")
- .HasMaxLength(64);
-
- b.Property("Value")
- .IsRequired()
- .HasMaxLength(2048);
-
- b.HasKey("Id");
-
- b.HasIndex("Name", "ProviderName", "ProviderKey");
-
- b.ToTable("AbpSettings");
- });
-
- modelBuilder.Entity("Volo.Docs.Projects.Project", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd();
-
- b.Property("ConcurrencyStamp")
- .IsConcurrencyToken()
- .HasColumnName("ConcurrencyStamp");
-
- b.Property("DefaultDocumentName")
- .IsRequired()
- .HasMaxLength(128);
-
- b.Property("DocumentStoreType");
-
- b.Property("ExtraProperties")
- .HasColumnName("ExtraProperties");
-
- b.Property("Format");
-
- b.Property("LatestVersionBranchName")
- .HasMaxLength(128);
-
- b.Property("MainWebsiteUrl");
-
- b.Property("MinimumVersion");
-
- b.Property("Name")
- .IsRequired()
- .HasMaxLength(128);
-
- b.Property("NavigationDocumentName")
- .IsRequired()
- .HasMaxLength(128);
-
- b.Property("ShortName")
- .IsRequired()
- .HasMaxLength(32);
-
- b.HasKey("Id");
-
- b.ToTable("DocsProjects");
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityRoleClaim", b =>
- {
- b.HasOne("Volo.Abp.Identity.IdentityRole")
- .WithMany("Claims")
- .HasForeignKey("RoleId")
- .OnDelete(DeleteBehavior.Cascade);
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityUserClaim", b =>
- {
- b.HasOne("Volo.Abp.Identity.IdentityUser")
- .WithMany("Claims")
- .HasForeignKey("UserId")
- .OnDelete(DeleteBehavior.Cascade);
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityUserLogin", b =>
- {
- b.HasOne("Volo.Abp.Identity.IdentityUser")
- .WithMany("Logins")
- .HasForeignKey("UserId")
- .OnDelete(DeleteBehavior.Cascade);
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityUserRole", b =>
- {
- b.HasOne("Volo.Abp.Identity.IdentityRole")
- .WithMany()
- .HasForeignKey("RoleId")
- .OnDelete(DeleteBehavior.Cascade);
-
- b.HasOne("Volo.Abp.Identity.IdentityUser")
- .WithMany("Roles")
- .HasForeignKey("UserId")
- .OnDelete(DeleteBehavior.Cascade);
- });
-
- modelBuilder.Entity("Volo.Abp.Identity.IdentityUserToken", b =>
- {
- b.HasOne("Volo.Abp.Identity.IdentityUser")
- .WithMany("Tokens")
- .HasForeignKey("UserId")
- .OnDelete(DeleteBehavior.Cascade);
- });
-#pragma warning restore 612, 618
- }
- }
-}
diff --git a/modules/docs/app/VoloDocs.EntityFrameworkCore/Migrations/20200212135141_init.Designer.cs b/modules/docs/app/VoloDocs.EntityFrameworkCore/Migrations/20200212135141_init.Designer.cs
new file mode 100644
index 00000000000..3c21209e8c9
--- /dev/null
+++ b/modules/docs/app/VoloDocs.EntityFrameworkCore/Migrations/20200212135141_init.Designer.cs
@@ -0,0 +1,670 @@
+//
+using System;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Metadata;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+using VoloDocs.EntityFrameworkCore;
+
+namespace VoloDocs.EntityFrameworkCore.Migrations
+{
+ [DbContext(typeof(VoloDocsDbContext))]
+ [Migration("20200212135141_init")]
+ partial class init
+ {
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("ProductVersion", "3.1.1")
+ .HasAnnotation("Relational:MaxIdentifierLength", 128)
+ .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityClaimType", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .IsRequired()
+ .HasColumnName("ConcurrencyStamp")
+ .HasColumnType("nvarchar(256)")
+ .HasMaxLength(256);
+
+ b.Property("Description")
+ .HasColumnType("nvarchar(256)")
+ .HasMaxLength(256);
+
+ b.Property("ExtraProperties")
+ .HasColumnName("ExtraProperties")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("IsStatic")
+ .HasColumnType("bit");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasColumnType("nvarchar(256)")
+ .HasMaxLength(256);
+
+ b.Property("Regex")
+ .HasColumnType("nvarchar(512)")
+ .HasMaxLength(512);
+
+ b.Property("RegexDescription")
+ .HasColumnType("nvarchar(128)")
+ .HasMaxLength(128);
+
+ b.Property("Required")
+ .HasColumnType("bit");
+
+ b.Property("ValueType")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.ToTable("AbpClaimTypes");
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityRole", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .IsRequired()
+ .HasColumnName("ConcurrencyStamp")
+ .HasColumnType("nvarchar(256)")
+ .HasMaxLength(256);
+
+ b.Property("ExtraProperties")
+ .HasColumnName("ExtraProperties")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("IsDefault")
+ .HasColumnName("IsDefault")
+ .HasColumnType("bit");
+
+ b.Property("IsPublic")
+ .HasColumnName("IsPublic")
+ .HasColumnType("bit");
+
+ b.Property("IsStatic")
+ .HasColumnName("IsStatic")
+ .HasColumnType("bit");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasColumnType("nvarchar(256)")
+ .HasMaxLength(256);
+
+ b.Property("NormalizedName")
+ .IsRequired()
+ .HasColumnType("nvarchar(256)")
+ .HasMaxLength(256);
+
+ b.Property("TenantId")
+ .HasColumnType("uniqueidentifier");
+
+ b.HasKey("Id");
+
+ b.HasIndex("NormalizedName");
+
+ b.ToTable("AbpRoles");
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityRoleClaim", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("ClaimType")
+ .IsRequired()
+ .HasColumnType("nvarchar(256)")
+ .HasMaxLength(256);
+
+ b.Property("ClaimValue")
+ .HasColumnType("nvarchar(1024)")
+ .HasMaxLength(1024);
+
+ b.Property("RoleId")
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("TenantId")
+ .HasColumnType("uniqueidentifier");
+
+ b.HasKey("Id");
+
+ b.HasIndex("RoleId");
+
+ b.ToTable("AbpRoleClaims");
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUser", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("AccessFailedCount")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("AccessFailedCount")
+ .HasColumnType("int")
+ .HasDefaultValue(0);
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .HasColumnName("ConcurrencyStamp")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("CreationTime")
+ .HasColumnName("CreationTime")
+ .HasColumnType("datetime2");
+
+ b.Property("CreatorId")
+ .HasColumnName("CreatorId")
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("DeleterId")
+ .HasColumnName("DeleterId")
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("DeletionTime")
+ .HasColumnName("DeletionTime")
+ .HasColumnType("datetime2");
+
+ b.Property("Email")
+ .IsRequired()
+ .HasColumnName("Email")
+ .HasColumnType("nvarchar(256)")
+ .HasMaxLength(256);
+
+ b.Property("EmailConfirmed")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("EmailConfirmed")
+ .HasColumnType("bit")
+ .HasDefaultValue(false);
+
+ b.Property("ExtraProperties")
+ .HasColumnName("ExtraProperties")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("IsDeleted")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("IsDeleted")
+ .HasColumnType("bit")
+ .HasDefaultValue(false);
+
+ b.Property("LastModificationTime")
+ .HasColumnName("LastModificationTime")
+ .HasColumnType("datetime2");
+
+ b.Property("LastModifierId")
+ .HasColumnName("LastModifierId")
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("LockoutEnabled")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("LockoutEnabled")
+ .HasColumnType("bit")
+ .HasDefaultValue(false);
+
+ b.Property("LockoutEnd")
+ .HasColumnType("datetimeoffset");
+
+ b.Property("Name")
+ .HasColumnName("Name")
+ .HasColumnType("nvarchar(64)")
+ .HasMaxLength(64);
+
+ b.Property("NormalizedEmail")
+ .IsRequired()
+ .HasColumnName("NormalizedEmail")
+ .HasColumnType("nvarchar(256)")
+ .HasMaxLength(256);
+
+ b.Property("NormalizedUserName")
+ .IsRequired()
+ .HasColumnName("NormalizedUserName")
+ .HasColumnType("nvarchar(256)")
+ .HasMaxLength(256);
+
+ b.Property("PasswordHash")
+ .HasColumnName("PasswordHash")
+ .HasColumnType("nvarchar(256)")
+ .HasMaxLength(256);
+
+ b.Property("PhoneNumber")
+ .HasColumnName("PhoneNumber")
+ .HasColumnType("nvarchar(16)")
+ .HasMaxLength(16);
+
+ b.Property("PhoneNumberConfirmed")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("PhoneNumberConfirmed")
+ .HasColumnType("bit")
+ .HasDefaultValue(false);
+
+ b.Property("SecurityStamp")
+ .IsRequired()
+ .HasColumnName("SecurityStamp")
+ .HasColumnType("nvarchar(256)")
+ .HasMaxLength(256);
+
+ b.Property("Surname")
+ .HasColumnName("Surname")
+ .HasColumnType("nvarchar(64)")
+ .HasMaxLength(64);
+
+ b.Property("TenantId")
+ .HasColumnName("TenantId")
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("TwoFactorEnabled")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("TwoFactorEnabled")
+ .HasColumnType("bit")
+ .HasDefaultValue(false);
+
+ b.Property("UserName")
+ .IsRequired()
+ .HasColumnName("UserName")
+ .HasColumnType("nvarchar(256)")
+ .HasMaxLength(256);
+
+ b.HasKey("Id");
+
+ b.HasIndex("Email");
+
+ b.HasIndex("NormalizedEmail");
+
+ b.HasIndex("NormalizedUserName");
+
+ b.HasIndex("UserName");
+
+ b.ToTable("AbpUsers");
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserClaim", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("ClaimType")
+ .IsRequired()
+ .HasColumnType("nvarchar(256)")
+ .HasMaxLength(256);
+
+ b.Property("ClaimValue")
+ .HasColumnType("nvarchar(1024)")
+ .HasMaxLength(1024);
+
+ b.Property("TenantId")
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("UserId")
+ .HasColumnType("uniqueidentifier");
+
+ b.HasKey("Id");
+
+ b.HasIndex("UserId");
+
+ b.ToTable("AbpUserClaims");
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserLogin", b =>
+ {
+ b.Property("UserId")
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("LoginProvider")
+ .HasColumnType("nvarchar(64)")
+ .HasMaxLength(64);
+
+ b.Property("ProviderDisplayName")
+ .HasColumnType("nvarchar(128)")
+ .HasMaxLength(128);
+
+ b.Property("ProviderKey")
+ .IsRequired()
+ .HasColumnType("nvarchar(196)")
+ .HasMaxLength(196);
+
+ b.Property("TenantId")
+ .HasColumnType("uniqueidentifier");
+
+ b.HasKey("UserId", "LoginProvider");
+
+ b.HasIndex("LoginProvider", "ProviderKey");
+
+ b.ToTable("AbpUserLogins");
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserRole", b =>
+ {
+ b.Property("UserId")
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("RoleId")
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("TenantId")
+ .HasColumnType("uniqueidentifier");
+
+ b.HasKey("UserId", "RoleId");
+
+ b.HasIndex("RoleId", "UserId");
+
+ b.ToTable("AbpUserRoles");
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserToken", b =>
+ {
+ b.Property("UserId")
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("LoginProvider")
+ .HasColumnType("nvarchar(64)")
+ .HasMaxLength(64);
+
+ b.Property("Name")
+ .HasColumnType("nvarchar(128)")
+ .HasMaxLength(128);
+
+ b.Property("TenantId")
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("Value")
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("UserId", "LoginProvider", "Name");
+
+ b.ToTable("AbpUserTokens");
+ });
+
+ modelBuilder.Entity("Volo.Abp.PermissionManagement.PermissionGrant", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasColumnType("nvarchar(128)")
+ .HasMaxLength(128);
+
+ b.Property("ProviderKey")
+ .IsRequired()
+ .HasColumnType("nvarchar(64)")
+ .HasMaxLength(64);
+
+ b.Property("ProviderName")
+ .IsRequired()
+ .HasColumnType("nvarchar(64)")
+ .HasMaxLength(64);
+
+ b.Property("TenantId")
+ .HasColumnType("uniqueidentifier");
+
+ b.HasKey("Id");
+
+ b.HasIndex("Name", "ProviderName", "ProviderKey");
+
+ b.ToTable("AbpPermissionGrants");
+ });
+
+ modelBuilder.Entity("Volo.Abp.SettingManagement.Setting", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasColumnType("nvarchar(128)")
+ .HasMaxLength(128);
+
+ b.Property("ProviderKey")
+ .HasColumnType("nvarchar(64)")
+ .HasMaxLength(64);
+
+ b.Property("ProviderName")
+ .HasColumnType("nvarchar(64)")
+ .HasMaxLength(64);
+
+ b.Property("Value")
+ .IsRequired()
+ .HasColumnType("nvarchar(2048)")
+ .HasMaxLength(2048);
+
+ b.HasKey("Id");
+
+ b.HasIndex("Name", "ProviderName", "ProviderKey");
+
+ b.ToTable("AbpSettings");
+ });
+
+ modelBuilder.Entity("Volo.Docs.Documents.Document", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .HasColumnName("ConcurrencyStamp")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Content")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("EditLink")
+ .HasColumnType("nvarchar(2048)")
+ .HasMaxLength(2048);
+
+ b.Property("ExtraProperties")
+ .HasColumnName("ExtraProperties")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("FileName")
+ .IsRequired()
+ .HasColumnType("nvarchar(128)")
+ .HasMaxLength(128);
+
+ b.Property("Format")
+ .HasColumnType("nvarchar(128)")
+ .HasMaxLength(128);
+
+ b.Property("LanguageCode")
+ .IsRequired()
+ .HasColumnType("nvarchar(128)")
+ .HasMaxLength(128);
+
+ b.Property("LastCachedTime")
+ .HasColumnType("datetime2");
+
+ b.Property("LastUpdatedTime")
+ .HasColumnType("datetime2");
+
+ b.Property("LocalDirectory")
+ .HasColumnType("nvarchar(512)")
+ .HasMaxLength(512);
+
+ b.Property("Name")
+ .IsRequired()
+ .HasColumnType("nvarchar(255)")
+ .HasMaxLength(255);
+
+ b.Property("ProjectId")
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("RawRootUrl")
+ .HasColumnType("nvarchar(2048)")
+ .HasMaxLength(2048);
+
+ b.Property("RootUrl")
+ .HasColumnType("nvarchar(2048)")
+ .HasMaxLength(2048);
+
+ b.Property("UpdatedCount")
+ .HasColumnType("int");
+
+ b.Property("Version")
+ .IsRequired()
+ .HasColumnType("nvarchar(128)")
+ .HasMaxLength(128);
+
+ b.HasKey("Id");
+
+ b.ToTable("DocsDocuments");
+ });
+
+ modelBuilder.Entity("Volo.Docs.Documents.DocumentContributor", b =>
+ {
+ b.Property("DocumentId")
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("Username")
+ .HasColumnType("nvarchar(450)");
+
+ b.Property("AvatarUrl")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("UserProfileUrl")
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("DocumentId", "Username");
+
+ b.ToTable("DocsDocumentContributors");
+ });
+
+ modelBuilder.Entity("Volo.Docs.Projects.Project", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("uniqueidentifier");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .HasColumnName("ConcurrencyStamp")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("DefaultDocumentName")
+ .IsRequired()
+ .HasColumnType("nvarchar(128)")
+ .HasMaxLength(128);
+
+ b.Property("DocumentStoreType")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("ExtraProperties")
+ .HasColumnName("ExtraProperties")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Format")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("LatestVersionBranchName")
+ .HasColumnType("nvarchar(128)")
+ .HasMaxLength(128);
+
+ b.Property("MainWebsiteUrl")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("MinimumVersion")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasColumnType("nvarchar(128)")
+ .HasMaxLength(128);
+
+ b.Property("NavigationDocumentName")
+ .IsRequired()
+ .HasColumnType("nvarchar(128)")
+ .HasMaxLength(128);
+
+ b.Property("ParametersDocumentName")
+ .IsRequired()
+ .HasColumnType("nvarchar(128)")
+ .HasMaxLength(128);
+
+ b.Property("ShortName")
+ .IsRequired()
+ .HasColumnType("nvarchar(32)")
+ .HasMaxLength(32);
+
+ b.HasKey("Id");
+
+ b.ToTable("DocsProjects");
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityRoleClaim", b =>
+ {
+ b.HasOne("Volo.Abp.Identity.IdentityRole", null)
+ .WithMany("Claims")
+ .HasForeignKey("RoleId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserClaim", b =>
+ {
+ b.HasOne("Volo.Abp.Identity.IdentityUser", null)
+ .WithMany("Claims")
+ .HasForeignKey("UserId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserLogin", b =>
+ {
+ b.HasOne("Volo.Abp.Identity.IdentityUser", null)
+ .WithMany("Logins")
+ .HasForeignKey("UserId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserRole", b =>
+ {
+ b.HasOne("Volo.Abp.Identity.IdentityRole", null)
+ .WithMany()
+ .HasForeignKey("RoleId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("Volo.Abp.Identity.IdentityUser", null)
+ .WithMany("Roles")
+ .HasForeignKey("UserId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserToken", b =>
+ {
+ b.HasOne("Volo.Abp.Identity.IdentityUser", null)
+ .WithMany("Tokens")
+ .HasForeignKey("UserId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+ });
+
+ modelBuilder.Entity("Volo.Docs.Documents.DocumentContributor", b =>
+ {
+ b.HasOne("Volo.Docs.Documents.Document", null)
+ .WithMany("Contributors")
+ .HasForeignKey("DocumentId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+ });
+#pragma warning restore 612, 618
+ }
+ }
+}
diff --git a/modules/docs/app/VoloDocs.EntityFrameworkCore/Migrations/20181225134002_Initial20181225.cs b/modules/docs/app/VoloDocs.EntityFrameworkCore/Migrations/20200212135141_init.cs
similarity index 83%
rename from modules/docs/app/VoloDocs.EntityFrameworkCore/Migrations/20181225134002_Initial20181225.cs
rename to modules/docs/app/VoloDocs.EntityFrameworkCore/Migrations/20200212135141_init.cs
index abae1bbc044..cb18bebed62 100644
--- a/modules/docs/app/VoloDocs.EntityFrameworkCore/Migrations/20181225134002_Initial20181225.cs
+++ b/modules/docs/app/VoloDocs.EntityFrameworkCore/Migrations/20200212135141_init.cs
@@ -3,7 +3,7 @@
namespace VoloDocs.EntityFrameworkCore.Migrations
{
- public partial class Initial20181225 : Migration
+ public partial class init : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
@@ -95,8 +95,8 @@ protected override void Up(MigrationBuilder migrationBuilder)
NormalizedUserName = table.Column(maxLength: 256, nullable: false),
Name = table.Column(maxLength: 64, nullable: true),
Surname = table.Column(maxLength: 64, nullable: true),
- Email = table.Column(maxLength: 256, nullable: true),
- NormalizedEmail = table.Column(maxLength: 256, nullable: true),
+ Email = table.Column(maxLength: 256, nullable: false),
+ NormalizedEmail = table.Column(maxLength: 256, nullable: false),
EmailConfirmed = table.Column(nullable: false, defaultValue: false),
PasswordHash = table.Column(maxLength: 256, nullable: true),
SecurityStamp = table.Column(maxLength: 256, nullable: false),
@@ -112,6 +112,33 @@ protected override void Up(MigrationBuilder migrationBuilder)
table.PrimaryKey("PK_AbpUsers", x => x.Id);
});
+ migrationBuilder.CreateTable(
+ name: "DocsDocuments",
+ columns: table => new
+ {
+ Id = table.Column(nullable: false),
+ ExtraProperties = table.Column(nullable: true),
+ ConcurrencyStamp = table.Column(nullable: true),
+ ProjectId = table.Column(nullable: false),
+ Name = table.Column(maxLength: 255, nullable: false),
+ Version = table.Column(maxLength: 128, nullable: false),
+ LanguageCode = table.Column(maxLength: 128, nullable: false),
+ FileName = table.Column(maxLength: 128, nullable: false),
+ Content = table.Column(nullable: false),
+ Format = table.Column(maxLength: 128, nullable: true),
+ EditLink = table.Column(maxLength: 2048, nullable: true),
+ RootUrl = table.Column(maxLength: 2048, nullable: true),
+ RawRootUrl = table.Column(maxLength: 2048, nullable: true),
+ LocalDirectory = table.Column(maxLength: 512, nullable: true),
+ LastUpdatedTime = table.Column(nullable: false),
+ UpdatedCount = table.Column(nullable: false),
+ LastCachedTime = table.Column(nullable: false)
+ },
+ constraints: table =>
+ {
+ table.PrimaryKey("PK_DocsDocuments", x => x.Id);
+ });
+
migrationBuilder.CreateTable(
name: "DocsProjects",
columns: table => new
@@ -124,6 +151,7 @@ protected override void Up(MigrationBuilder migrationBuilder)
Format = table.Column(nullable: true),
DefaultDocumentName = table.Column(maxLength: 128, nullable: false),
NavigationDocumentName = table.Column(maxLength: 128, nullable: false),
+ ParametersDocumentName = table.Column(maxLength: 128, nullable: false),
MinimumVersion = table.Column(nullable: true),
DocumentStoreType = table.Column(nullable: true),
MainWebsiteUrl = table.Column(nullable: true),
@@ -180,9 +208,9 @@ protected override void Up(MigrationBuilder migrationBuilder)
name: "AbpUserLogins",
columns: table => new
{
- TenantId = table.Column(nullable: true),
UserId = table.Column(nullable: false),
LoginProvider = table.Column(maxLength: 64, nullable: false),
+ TenantId = table.Column(nullable: true),
ProviderKey = table.Column(maxLength: 196, nullable: false),
ProviderDisplayName = table.Column(maxLength: 128, nullable: true)
},
@@ -201,9 +229,9 @@ protected override void Up(MigrationBuilder migrationBuilder)
name: "AbpUserRoles",
columns: table => new
{
- TenantId = table.Column(nullable: true),
UserId = table.Column(nullable: false),
- RoleId = table.Column(nullable: false)
+ RoleId = table.Column(nullable: false),
+ TenantId = table.Column(nullable: true)
},
constraints: table =>
{
@@ -226,10 +254,10 @@ protected override void Up(MigrationBuilder migrationBuilder)
name: "AbpUserTokens",
columns: table => new
{
- TenantId = table.Column(nullable: true),
UserId = table.Column(nullable: false),
LoginProvider = table.Column(maxLength: 64, nullable: false),
Name = table.Column(maxLength: 128, nullable: false),
+ TenantId = table.Column(nullable: true),
Value = table.Column(nullable: true)
},
constraints: table =>
@@ -243,6 +271,26 @@ protected override void Up(MigrationBuilder migrationBuilder)
onDelete: ReferentialAction.Cascade);
});
+ migrationBuilder.CreateTable(
+ name: "DocsDocumentContributors",
+ columns: table => new
+ {
+ DocumentId = table.Column(nullable: false),
+ Username = table.Column