mirror of https://github.com/abpframework/abp.git
576 changed files with 318319 additions and 0 deletions
@ -0,0 +1,2 @@ |
|||||
|
# abp-www |
||||
|
Official Web Site of the ABP patform |
||||
@ -0,0 +1,49 @@ |
|||||
|
|
||||
|
Microsoft Visual Studio Solution File, Format Version 12.00 |
||||
|
# Visual Studio 15 |
||||
|
VisualStudioVersion = 15.0.27703.1 |
||||
|
MinimumVisualStudioVersion = 10.0.40219.1 |
||||
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.AbpWebSite.Web", "src\Volo.AbpWebSite.Web\Volo.AbpWebSite.Web.csproj", "{7B8B649E-1C25-43FD-87B1-E9FED3A57ED6}" |
||||
|
EndProject |
||||
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.AbpWebSite.Domain", "src\Volo.AbpWebSite.Domain\Volo.AbpWebSite.Domain.csproj", "{9D3ED14A-FFC0-486A-B9B4-B249688AC6A6}" |
||||
|
EndProject |
||||
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.AbpWebSite.Application", "src\Volo.AbpWebSite.Application\Volo.AbpWebSite.Application.csproj", "{DDE85F9B-15E6-4D1F-A27C-1B38569564F6}" |
||||
|
EndProject |
||||
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.AbpWebSite.EntityFrameworkCore", "src\Volo.AbpWebSite.EntityFrameworkCore\Volo.AbpWebSite.EntityFrameworkCore.csproj", "{028C05DB-61BF-41EF-B9AD-614A43CD0A7F}" |
||||
|
EndProject |
||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Utils.SolutionTemplating", "src\Volo.Utils.SolutionTemplating\Volo.Utils.SolutionTemplating.csproj", "{742FCDDD-537C-42CC-AF16-A92C094D4B1D}" |
||||
|
EndProject |
||||
|
Global |
||||
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution |
||||
|
Debug|Any CPU = Debug|Any CPU |
||||
|
Release|Any CPU = Release|Any CPU |
||||
|
EndGlobalSection |
||||
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution |
||||
|
{7B8B649E-1C25-43FD-87B1-E9FED3A57ED6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
||||
|
{7B8B649E-1C25-43FD-87B1-E9FED3A57ED6}.Debug|Any CPU.Build.0 = Debug|Any CPU |
||||
|
{7B8B649E-1C25-43FD-87B1-E9FED3A57ED6}.Release|Any CPU.ActiveCfg = Release|Any CPU |
||||
|
{7B8B649E-1C25-43FD-87B1-E9FED3A57ED6}.Release|Any CPU.Build.0 = Release|Any CPU |
||||
|
{9D3ED14A-FFC0-486A-B9B4-B249688AC6A6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
||||
|
{9D3ED14A-FFC0-486A-B9B4-B249688AC6A6}.Debug|Any CPU.Build.0 = Debug|Any CPU |
||||
|
{9D3ED14A-FFC0-486A-B9B4-B249688AC6A6}.Release|Any CPU.ActiveCfg = Release|Any CPU |
||||
|
{9D3ED14A-FFC0-486A-B9B4-B249688AC6A6}.Release|Any CPU.Build.0 = Release|Any CPU |
||||
|
{DDE85F9B-15E6-4D1F-A27C-1B38569564F6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
||||
|
{DDE85F9B-15E6-4D1F-A27C-1B38569564F6}.Debug|Any CPU.Build.0 = Debug|Any CPU |
||||
|
{DDE85F9B-15E6-4D1F-A27C-1B38569564F6}.Release|Any CPU.ActiveCfg = Release|Any CPU |
||||
|
{DDE85F9B-15E6-4D1F-A27C-1B38569564F6}.Release|Any CPU.Build.0 = Release|Any CPU |
||||
|
{028C05DB-61BF-41EF-B9AD-614A43CD0A7F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
||||
|
{028C05DB-61BF-41EF-B9AD-614A43CD0A7F}.Debug|Any CPU.Build.0 = Debug|Any CPU |
||||
|
{028C05DB-61BF-41EF-B9AD-614A43CD0A7F}.Release|Any CPU.ActiveCfg = Release|Any CPU |
||||
|
{028C05DB-61BF-41EF-B9AD-614A43CD0A7F}.Release|Any CPU.Build.0 = Release|Any CPU |
||||
|
{742FCDDD-537C-42CC-AF16-A92C094D4B1D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
||||
|
{742FCDDD-537C-42CC-AF16-A92C094D4B1D}.Debug|Any CPU.Build.0 = Debug|Any CPU |
||||
|
{742FCDDD-537C-42CC-AF16-A92C094D4B1D}.Release|Any CPU.ActiveCfg = Release|Any CPU |
||||
|
{742FCDDD-537C-42CC-AF16-A92C094D4B1D}.Release|Any CPU.Build.0 = Release|Any CPU |
||||
|
EndGlobalSection |
||||
|
GlobalSection(SolutionProperties) = preSolution |
||||
|
HideSolutionNode = FALSE |
||||
|
EndGlobalSection |
||||
|
GlobalSection(ExtensibilityGlobals) = postSolution |
||||
|
SolutionGuid = {F24AF782-5FD0-421E-A775-CA1C042D46BE} |
||||
|
EndGlobalSection |
||||
|
EndGlobal |
||||
@ -0,0 +1,12 @@ |
|||||
|
<Project Sdk="Microsoft.NET.Sdk"> |
||||
|
|
||||
|
<PropertyGroup> |
||||
|
<TargetFramework>netcoreapp2.1</TargetFramework> |
||||
|
<RootNamespace /> |
||||
|
</PropertyGroup> |
||||
|
|
||||
|
<ItemGroup> |
||||
|
<ProjectReference Include="..\Volo.AbpWebSite.Domain\Volo.AbpWebSite.Domain.csproj" /> |
||||
|
</ItemGroup> |
||||
|
|
||||
|
</Project> |
||||
@ -0,0 +1,11 @@ |
|||||
|
using Volo.Abp.Modularity; |
||||
|
|
||||
|
namespace Volo.AbpWebSite |
||||
|
{ |
||||
|
[DependsOn( |
||||
|
typeof(AbpWebSiteDomainModule))] |
||||
|
public class AbpWebSiteApplicationModule : AbpModule |
||||
|
{ |
||||
|
|
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,19 @@ |
|||||
|
<Project Sdk="Microsoft.NET.Sdk"> |
||||
|
|
||||
|
<PropertyGroup> |
||||
|
<TargetFramework>netcoreapp2.1</TargetFramework> |
||||
|
<RootNamespace /> |
||||
|
</PropertyGroup> |
||||
|
|
||||
|
<ItemGroup> |
||||
|
<ProjectReference Include="..\..\..\..\..\abp\framework\src\Volo.Abp.Ddd.Domain\Volo.Abp.Ddd.Domain.csproj" /> |
||||
|
<ProjectReference Include="..\Volo.Utils.SolutionTemplating\Volo.Utils.SolutionTemplating.csproj" /> |
||||
|
</ItemGroup> |
||||
|
|
||||
|
<ItemGroup> |
||||
|
<PackageReference Include="Ionic.Zip" Version="1.9.1.8" /> |
||||
|
<PackageReference Include="Newtonsoft.Json" Version="11.0.2" /> |
||||
|
<PackageReference Include="HtmlAgilityPack.NetCore" Version="1.5.0.1" /> |
||||
|
</ItemGroup> |
||||
|
|
||||
|
</Project> |
||||
@ -0,0 +1,13 @@ |
|||||
|
using Volo.Abp.Modularity; |
||||
|
using Volo.Utils.SolutionTemplating; |
||||
|
|
||||
|
namespace Volo.AbpWebSite |
||||
|
{ |
||||
|
[DependsOn( |
||||
|
typeof(SolutionTemplatingModule) |
||||
|
)] |
||||
|
public class AbpWebSiteDomainModule : AbpModule |
||||
|
{ |
||||
|
|
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,61 @@ |
|||||
|
// <auto-generated />
|
||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore; |
||||
|
using Microsoft.EntityFrameworkCore.Infrastructure; |
||||
|
using Microsoft.EntityFrameworkCore.Metadata; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion; |
||||
|
using Volo.AbpWebSite.EntityFrameworkCore; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
[DbContext(typeof(AbpWebSiteDbContext))] |
||||
|
[Migration("20180627081027_Initial")] |
||||
|
partial class Initial |
||||
|
{ |
||||
|
protected override void BuildTargetModel(ModelBuilder modelBuilder) |
||||
|
{ |
||||
|
#pragma warning disable 612, 618
|
||||
|
modelBuilder |
||||
|
.HasAnnotation("ProductVersion", "2.1.0-rtm-30799") |
||||
|
.HasAnnotation("Relational:MaxIdentifierLength", 128) |
||||
|
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Docs.Projects.Project", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("DefaultDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("DocumentStoreType"); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<string>("Format"); |
||||
|
|
||||
|
b.Property<string>("GoogleCustomSearchId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("NavigationDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("DocsProjects"); |
||||
|
}); |
||||
|
#pragma warning restore 612, 618
|
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,36 @@ |
|||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
public partial class Initial : Migration |
||||
|
{ |
||||
|
protected override void Up(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "DocsProjects", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
Id = table.Column<Guid>(nullable: false), |
||||
|
Name = table.Column<string>(maxLength: 128, nullable: false), |
||||
|
ShortName = table.Column<string>(maxLength: 32, nullable: false), |
||||
|
Format = table.Column<string>(nullable: true), |
||||
|
DefaultDocumentName = table.Column<string>(maxLength: 128, nullable: false), |
||||
|
NavigationDocumentName = table.Column<string>(maxLength: 128, nullable: false), |
||||
|
DocumentStoreType = table.Column<string>(nullable: true), |
||||
|
GoogleCustomSearchId = table.Column<string>(nullable: true), |
||||
|
ExtraProperties = table.Column<string>(nullable: true) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_DocsProjects", x => x.Id); |
||||
|
}); |
||||
|
} |
||||
|
|
||||
|
protected override void Down(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.DropTable( |
||||
|
name: "DocsProjects"); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,83 @@ |
|||||
|
// <auto-generated />
|
||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore; |
||||
|
using Microsoft.EntityFrameworkCore.Infrastructure; |
||||
|
using Microsoft.EntityFrameworkCore.Metadata; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion; |
||||
|
using Volo.AbpWebSite.EntityFrameworkCore; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
[DbContext(typeof(AbpWebSiteDbContext))] |
||||
|
[Migration("20180628070043_Add_DownloadInfo")] |
||||
|
partial class Add_DownloadInfo |
||||
|
{ |
||||
|
protected override void BuildTargetModel(ModelBuilder modelBuilder) |
||||
|
{ |
||||
|
#pragma warning disable 612, 618
|
||||
|
modelBuilder |
||||
|
.HasAnnotation("ProductVersion", "2.1.0-rtm-30799") |
||||
|
.HasAnnotation("Relational:MaxIdentifierLength", 128) |
||||
|
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.AbpWebSite.Downloads.DownloadInfo", b => |
||||
|
{ |
||||
|
b.Property<int>("Id") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId"); |
||||
|
|
||||
|
b.Property<string>("ProjectName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("Version") |
||||
|
.HasMaxLength(20); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("Downloads"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Docs.Projects.Project", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("DefaultDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("DocumentStoreType"); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<string>("Format"); |
||||
|
|
||||
|
b.Property<string>("GoogleCustomSearchId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("NavigationDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("DocsProjects"); |
||||
|
}); |
||||
|
#pragma warning restore 612, 618
|
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,34 @@ |
|||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore.Metadata; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
public partial class Add_DownloadInfo : Migration |
||||
|
{ |
||||
|
protected override void Up(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "Downloads", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
Id = table.Column<int>(nullable: false) |
||||
|
.Annotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn), |
||||
|
CreationTime = table.Column<DateTime>(nullable: false), |
||||
|
CreatorId = table.Column<Guid>(nullable: true), |
||||
|
ProjectName = table.Column<string>(maxLength: 128, nullable: false), |
||||
|
Version = table.Column<string>(maxLength: 20, nullable: true) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_Downloads", x => x.Id); |
||||
|
}); |
||||
|
} |
||||
|
|
||||
|
protected override void Down(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.DropTable( |
||||
|
name: "Downloads"); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,86 @@ |
|||||
|
// <auto-generated />
|
||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore; |
||||
|
using Microsoft.EntityFrameworkCore.Infrastructure; |
||||
|
using Microsoft.EntityFrameworkCore.Metadata; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion; |
||||
|
using Volo.AbpWebSite.EntityFrameworkCore; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
[DbContext(typeof(AbpWebSiteDbContext))] |
||||
|
[Migration("20180628070356_Add_DownloadInfo_CreationDuration")] |
||||
|
partial class Add_DownloadInfo_CreationDuration |
||||
|
{ |
||||
|
protected override void BuildTargetModel(ModelBuilder modelBuilder) |
||||
|
{ |
||||
|
#pragma warning disable 612, 618
|
||||
|
modelBuilder |
||||
|
.HasAnnotation("ProductVersion", "2.1.0-rtm-30799") |
||||
|
.HasAnnotation("Relational:MaxIdentifierLength", 128) |
||||
|
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.AbpWebSite.Downloads.DownloadInfo", b => |
||||
|
{ |
||||
|
b.Property<int>("Id") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); |
||||
|
|
||||
|
b.Property<int>("CreationDuration"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId"); |
||||
|
|
||||
|
b.Property<string>("ProjectName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("Version") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(20); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("Downloads"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Docs.Projects.Project", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("DefaultDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("DocumentStoreType"); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<string>("Format"); |
||||
|
|
||||
|
b.Property<string>("GoogleCustomSearchId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("NavigationDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("DocsProjects"); |
||||
|
}); |
||||
|
#pragma warning restore 612, 618
|
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,40 @@ |
|||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
public partial class Add_DownloadInfo_CreationDuration : Migration |
||||
|
{ |
||||
|
protected override void Up(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.AlterColumn<string>( |
||||
|
name: "Version", |
||||
|
table: "Downloads", |
||||
|
maxLength: 20, |
||||
|
nullable: false, |
||||
|
oldClrType: typeof(string), |
||||
|
oldMaxLength: 20, |
||||
|
oldNullable: true); |
||||
|
|
||||
|
migrationBuilder.AddColumn<int>( |
||||
|
name: "CreationDuration", |
||||
|
table: "Downloads", |
||||
|
nullable: false, |
||||
|
defaultValue: 0); |
||||
|
} |
||||
|
|
||||
|
protected override void Down(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "CreationDuration", |
||||
|
table: "Downloads"); |
||||
|
|
||||
|
migrationBuilder.AlterColumn<string>( |
||||
|
name: "Version", |
||||
|
table: "Downloads", |
||||
|
maxLength: 20, |
||||
|
nullable: true, |
||||
|
oldClrType: typeof(string), |
||||
|
oldMaxLength: 20); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,92 @@ |
|||||
|
// <auto-generated />
|
||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore; |
||||
|
using Microsoft.EntityFrameworkCore.Infrastructure; |
||||
|
using Microsoft.EntityFrameworkCore.Metadata; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion; |
||||
|
using Volo.AbpWebSite.EntityFrameworkCore; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
[DbContext(typeof(AbpWebSiteDbContext))] |
||||
|
[Migration("20180715113144_DownloadInfo_TemplateName_And_DatabaseProvider")] |
||||
|
partial class DownloadInfo_TemplateName_And_DatabaseProvider |
||||
|
{ |
||||
|
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.Docs.Projects.Project", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("DefaultDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("DocumentStoreType"); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<string>("Format"); |
||||
|
|
||||
|
b.Property<string>("GoogleCustomSearchId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("NavigationDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("DocsProjects"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Utils.SolutionTemplating.DownloadInfo", b => |
||||
|
{ |
||||
|
b.Property<int>("Id") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); |
||||
|
|
||||
|
b.Property<int>("CreationDuration"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId"); |
||||
|
|
||||
|
b.Property<byte>("DatabaseProvider"); |
||||
|
|
||||
|
b.Property<string>("ProjectName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("TemplateName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(42); |
||||
|
|
||||
|
b.Property<string>("Version") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(20); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("Downloads"); |
||||
|
}); |
||||
|
#pragma warning restore 612, 618
|
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,34 @@ |
|||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
public partial class DownloadInfo_TemplateName_And_DatabaseProvider : Migration |
||||
|
{ |
||||
|
protected override void Up(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.AddColumn<byte>( |
||||
|
name: "DatabaseProvider", |
||||
|
table: "Downloads", |
||||
|
nullable: false, |
||||
|
defaultValue: (byte)0); |
||||
|
|
||||
|
migrationBuilder.AddColumn<string>( |
||||
|
name: "TemplateName", |
||||
|
table: "Downloads", |
||||
|
maxLength: 42, |
||||
|
nullable: false, |
||||
|
defaultValue: ""); |
||||
|
} |
||||
|
|
||||
|
protected override void Down(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "DatabaseProvider", |
||||
|
table: "Downloads"); |
||||
|
|
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "TemplateName", |
||||
|
table: "Downloads"); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,509 @@ |
|||||
|
// <auto-generated />
|
||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore; |
||||
|
using Microsoft.EntityFrameworkCore.Infrastructure; |
||||
|
using Microsoft.EntityFrameworkCore.Metadata; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion; |
||||
|
using Volo.AbpWebSite.EntityFrameworkCore; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
[DbContext(typeof(AbpWebSiteDbContext))] |
||||
|
[Migration("20180803070224_Added_Identity_And_Blogging_Modules")] |
||||
|
partial class Added_Identity_And_Blogging_Modules |
||||
|
{ |
||||
|
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.IdentityRole", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ConcurrencyStamp"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("NormalizedName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("NormalizedName"); |
||||
|
|
||||
|
b.ToTable("AbpRoles"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityRoleClaim", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ClaimType") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ClaimValue") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<Guid>("RoleId"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("RoleId"); |
||||
|
|
||||
|
b.ToTable("AbpRoleClaims"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUser", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<int>("AccessFailedCount") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("AccessFailedCount") |
||||
|
.HasDefaultValue(0); |
||||
|
|
||||
|
b.Property<string>("ConcurrencyStamp") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("ConcurrencyStamp") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("Email") |
||||
|
.HasColumnName("Email") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<bool>("EmailConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("EmailConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<bool>("LockoutEnabled") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("LockoutEnabled") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTimeOffset?>("LockoutEnd"); |
||||
|
|
||||
|
b.Property<string>("NormalizedEmail") |
||||
|
.HasColumnName("NormalizedEmail") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("NormalizedUserName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("NormalizedUserName") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("PasswordHash") |
||||
|
.HasColumnName("PasswordHash") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("PhoneNumber") |
||||
|
.HasColumnName("PhoneNumber") |
||||
|
.HasMaxLength(16); |
||||
|
|
||||
|
b.Property<bool>("PhoneNumberConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("PhoneNumberConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("SecurityStamp") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("SecurityStamp") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId") |
||||
|
.HasColumnName("TenantId"); |
||||
|
|
||||
|
b.Property<bool>("TwoFactorEnabled") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("TwoFactorEnabled") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("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<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ClaimType") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ClaimValue") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("UserId"); |
||||
|
|
||||
|
b.ToTable("AbpUserClaims"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserLogin", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<string>("LoginProvider") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderDisplayName") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(196); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("UserId", "LoginProvider"); |
||||
|
|
||||
|
b.HasIndex("LoginProvider", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpUserLogins"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserRole", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<Guid>("RoleId"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("UserId", "RoleId"); |
||||
|
|
||||
|
b.HasIndex("RoleId", "UserId"); |
||||
|
|
||||
|
b.ToTable("AbpUserRoles"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserToken", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<string>("LoginProvider") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("Name"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.Property<string>("Value"); |
||||
|
|
||||
|
b.HasKey("UserId", "LoginProvider", "Name"); |
||||
|
|
||||
|
b.ToTable("AbpUserTokens"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.PermissionManagement.PermissionGrant", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("Name", "ProviderName", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpPermissionGrants"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.SettingManagement.Setting", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderName") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("Value") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(2048); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("Name", "ProviderName", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpSettings"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Blogs.Blog", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<string>("Description") |
||||
|
.HasColumnName("Description") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Name") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("ShortName") |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgBlogs"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.Post", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<Guid>("BlogId") |
||||
|
.HasColumnName("BlogId"); |
||||
|
|
||||
|
b.Property<string>("Content") |
||||
|
.HasColumnName("Content") |
||||
|
.HasMaxLength(1048576); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<string>("Title") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Title") |
||||
|
.HasMaxLength(512); |
||||
|
|
||||
|
b.Property<string>("Url") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Url") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("BlogId"); |
||||
|
|
||||
|
b.ToTable("BlgPosts"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Docs.Projects.Project", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("DefaultDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("DocumentStoreType"); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<string>("Format"); |
||||
|
|
||||
|
b.Property<string>("GoogleCustomSearchId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("NavigationDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("DocsProjects"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Utils.SolutionTemplating.DownloadInfo", b => |
||||
|
{ |
||||
|
b.Property<int>("Id") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); |
||||
|
|
||||
|
b.Property<int>("CreationDuration"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId"); |
||||
|
|
||||
|
b.Property<byte>("DatabaseProvider"); |
||||
|
|
||||
|
b.Property<string>("ProjectName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("TemplateName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(42); |
||||
|
|
||||
|
b.Property<string>("Version") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(20); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("Downloads"); |
||||
|
}); |
||||
|
|
||||
|
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); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.Post", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Blogs.Blog") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("BlogId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
}); |
||||
|
#pragma warning restore 612, 618
|
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,337 @@ |
|||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
public partial class Added_Identity_And_Blogging_Modules : Migration |
||||
|
{ |
||||
|
protected override void Up(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "AbpPermissionGrants", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
Id = table.Column<Guid>(nullable: false), |
||||
|
TenantId = table.Column<Guid>(nullable: true), |
||||
|
Name = table.Column<string>(maxLength: 128, nullable: false), |
||||
|
ProviderName = table.Column<string>(maxLength: 64, nullable: false), |
||||
|
ProviderKey = table.Column<string>(maxLength: 64, nullable: false) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_AbpPermissionGrants", x => x.Id); |
||||
|
}); |
||||
|
|
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "AbpRoles", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
Id = table.Column<Guid>(nullable: false), |
||||
|
TenantId = table.Column<Guid>(nullable: true), |
||||
|
Name = table.Column<string>(maxLength: 256, nullable: false), |
||||
|
NormalizedName = table.Column<string>(maxLength: 256, nullable: false), |
||||
|
ConcurrencyStamp = table.Column<string>(nullable: true) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_AbpRoles", x => x.Id); |
||||
|
}); |
||||
|
|
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "AbpSettings", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
Id = table.Column<Guid>(nullable: false), |
||||
|
Name = table.Column<string>(maxLength: 128, nullable: false), |
||||
|
Value = table.Column<string>(maxLength: 2048, nullable: false), |
||||
|
ProviderName = table.Column<string>(maxLength: 64, nullable: true), |
||||
|
ProviderKey = table.Column<string>(maxLength: 64, nullable: true) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_AbpSettings", x => x.Id); |
||||
|
}); |
||||
|
|
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "AbpUsers", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
Id = table.Column<Guid>(nullable: false), |
||||
|
TenantId = table.Column<Guid>(nullable: true), |
||||
|
UserName = table.Column<string>(maxLength: 256, nullable: false), |
||||
|
NormalizedUserName = table.Column<string>(maxLength: 256, nullable: false), |
||||
|
Email = table.Column<string>(maxLength: 256, nullable: true), |
||||
|
NormalizedEmail = table.Column<string>(maxLength: 256, nullable: true), |
||||
|
EmailConfirmed = table.Column<bool>(nullable: false, defaultValue: false), |
||||
|
PasswordHash = table.Column<string>(maxLength: 256, nullable: true), |
||||
|
SecurityStamp = table.Column<string>(maxLength: 256, nullable: false), |
||||
|
ConcurrencyStamp = table.Column<string>(maxLength: 256, nullable: false), |
||||
|
PhoneNumber = table.Column<string>(maxLength: 16, nullable: true), |
||||
|
PhoneNumberConfirmed = table.Column<bool>(nullable: false, defaultValue: false), |
||||
|
TwoFactorEnabled = table.Column<bool>(nullable: false, defaultValue: false), |
||||
|
LockoutEnd = table.Column<DateTimeOffset>(nullable: true), |
||||
|
LockoutEnabled = table.Column<bool>(nullable: false, defaultValue: false), |
||||
|
AccessFailedCount = table.Column<int>(nullable: false, defaultValue: 0), |
||||
|
ExtraProperties = table.Column<string>(nullable: true) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_AbpUsers", x => x.Id); |
||||
|
}); |
||||
|
|
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "BlgBlogs", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
Id = table.Column<Guid>(nullable: false), |
||||
|
CreationTime = table.Column<DateTime>(nullable: false), |
||||
|
CreatorId = table.Column<Guid>(nullable: true), |
||||
|
LastModificationTime = table.Column<DateTime>(nullable: true), |
||||
|
LastModifierId = table.Column<Guid>(nullable: true), |
||||
|
IsDeleted = table.Column<bool>(nullable: false, defaultValue: false), |
||||
|
DeleterId = table.Column<Guid>(nullable: true), |
||||
|
DeletionTime = table.Column<DateTime>(nullable: true), |
||||
|
Name = table.Column<string>(maxLength: 256, nullable: false), |
||||
|
ShortName = table.Column<string>(maxLength: 32, nullable: false), |
||||
|
Description = table.Column<string>(maxLength: 1024, nullable: true) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_BlgBlogs", x => x.Id); |
||||
|
}); |
||||
|
|
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "AbpRoleClaims", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
Id = table.Column<Guid>(nullable: false), |
||||
|
TenantId = table.Column<Guid>(nullable: true), |
||||
|
ClaimType = table.Column<string>(maxLength: 256, nullable: false), |
||||
|
ClaimValue = table.Column<string>(maxLength: 1024, nullable: true), |
||||
|
RoleId = table.Column<Guid>(nullable: false) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_AbpRoleClaims", x => x.Id); |
||||
|
table.ForeignKey( |
||||
|
name: "FK_AbpRoleClaims_AbpRoles_RoleId", |
||||
|
column: x => x.RoleId, |
||||
|
principalTable: "AbpRoles", |
||||
|
principalColumn: "Id", |
||||
|
onDelete: ReferentialAction.Cascade); |
||||
|
}); |
||||
|
|
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "AbpUserClaims", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
Id = table.Column<Guid>(nullable: false), |
||||
|
TenantId = table.Column<Guid>(nullable: true), |
||||
|
ClaimType = table.Column<string>(maxLength: 256, nullable: false), |
||||
|
ClaimValue = table.Column<string>(maxLength: 1024, nullable: true), |
||||
|
UserId = table.Column<Guid>(nullable: false) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_AbpUserClaims", x => x.Id); |
||||
|
table.ForeignKey( |
||||
|
name: "FK_AbpUserClaims_AbpUsers_UserId", |
||||
|
column: x => x.UserId, |
||||
|
principalTable: "AbpUsers", |
||||
|
principalColumn: "Id", |
||||
|
onDelete: ReferentialAction.Cascade); |
||||
|
}); |
||||
|
|
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "AbpUserLogins", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
TenantId = table.Column<Guid>(nullable: true), |
||||
|
UserId = table.Column<Guid>(nullable: false), |
||||
|
LoginProvider = table.Column<string>(maxLength: 64, nullable: false), |
||||
|
ProviderKey = table.Column<string>(maxLength: 196, nullable: false), |
||||
|
ProviderDisplayName = table.Column<string>(maxLength: 128, nullable: true) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_AbpUserLogins", x => new { x.UserId, x.LoginProvider }); |
||||
|
table.ForeignKey( |
||||
|
name: "FK_AbpUserLogins_AbpUsers_UserId", |
||||
|
column: x => x.UserId, |
||||
|
principalTable: "AbpUsers", |
||||
|
principalColumn: "Id", |
||||
|
onDelete: ReferentialAction.Cascade); |
||||
|
}); |
||||
|
|
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "AbpUserRoles", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
TenantId = table.Column<Guid>(nullable: true), |
||||
|
UserId = table.Column<Guid>(nullable: false), |
||||
|
RoleId = table.Column<Guid>(nullable: false) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_AbpUserRoles", x => new { x.UserId, x.RoleId }); |
||||
|
table.ForeignKey( |
||||
|
name: "FK_AbpUserRoles_AbpRoles_RoleId", |
||||
|
column: x => x.RoleId, |
||||
|
principalTable: "AbpRoles", |
||||
|
principalColumn: "Id", |
||||
|
onDelete: ReferentialAction.Cascade); |
||||
|
table.ForeignKey( |
||||
|
name: "FK_AbpUserRoles_AbpUsers_UserId", |
||||
|
column: x => x.UserId, |
||||
|
principalTable: "AbpUsers", |
||||
|
principalColumn: "Id", |
||||
|
onDelete: ReferentialAction.Cascade); |
||||
|
}); |
||||
|
|
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "AbpUserTokens", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
TenantId = table.Column<Guid>(nullable: true), |
||||
|
UserId = table.Column<Guid>(nullable: false), |
||||
|
LoginProvider = table.Column<string>(maxLength: 128, nullable: false), |
||||
|
Name = table.Column<string>(nullable: false), |
||||
|
Value = table.Column<string>(nullable: true) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_AbpUserTokens", x => new { x.UserId, x.LoginProvider, x.Name }); |
||||
|
table.ForeignKey( |
||||
|
name: "FK_AbpUserTokens_AbpUsers_UserId", |
||||
|
column: x => x.UserId, |
||||
|
principalTable: "AbpUsers", |
||||
|
principalColumn: "Id", |
||||
|
onDelete: ReferentialAction.Cascade); |
||||
|
}); |
||||
|
|
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "BlgPosts", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
Id = table.Column<Guid>(nullable: false), |
||||
|
CreationTime = table.Column<DateTime>(nullable: false), |
||||
|
CreatorId = table.Column<Guid>(nullable: true), |
||||
|
LastModificationTime = table.Column<DateTime>(nullable: true), |
||||
|
LastModifierId = table.Column<Guid>(nullable: true), |
||||
|
IsDeleted = table.Column<bool>(nullable: false, defaultValue: false), |
||||
|
DeleterId = table.Column<Guid>(nullable: true), |
||||
|
DeletionTime = table.Column<DateTime>(nullable: true), |
||||
|
BlogId = table.Column<Guid>(nullable: false), |
||||
|
Url = table.Column<string>(maxLength: 64, nullable: false), |
||||
|
Title = table.Column<string>(maxLength: 512, nullable: false), |
||||
|
Content = table.Column<string>(maxLength: 1048576, nullable: true) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_BlgPosts", x => x.Id); |
||||
|
table.ForeignKey( |
||||
|
name: "FK_BlgPosts_BlgBlogs_BlogId", |
||||
|
column: x => x.BlogId, |
||||
|
principalTable: "BlgBlogs", |
||||
|
principalColumn: "Id", |
||||
|
onDelete: ReferentialAction.Cascade); |
||||
|
}); |
||||
|
|
||||
|
migrationBuilder.CreateIndex( |
||||
|
name: "IX_AbpPermissionGrants_Name_ProviderName_ProviderKey", |
||||
|
table: "AbpPermissionGrants", |
||||
|
columns: new[] { "Name", "ProviderName", "ProviderKey" }); |
||||
|
|
||||
|
migrationBuilder.CreateIndex( |
||||
|
name: "IX_AbpRoleClaims_RoleId", |
||||
|
table: "AbpRoleClaims", |
||||
|
column: "RoleId"); |
||||
|
|
||||
|
migrationBuilder.CreateIndex( |
||||
|
name: "IX_AbpRoles_NormalizedName", |
||||
|
table: "AbpRoles", |
||||
|
column: "NormalizedName"); |
||||
|
|
||||
|
migrationBuilder.CreateIndex( |
||||
|
name: "IX_AbpSettings_Name_ProviderName_ProviderKey", |
||||
|
table: "AbpSettings", |
||||
|
columns: new[] { "Name", "ProviderName", "ProviderKey" }); |
||||
|
|
||||
|
migrationBuilder.CreateIndex( |
||||
|
name: "IX_AbpUserClaims_UserId", |
||||
|
table: "AbpUserClaims", |
||||
|
column: "UserId"); |
||||
|
|
||||
|
migrationBuilder.CreateIndex( |
||||
|
name: "IX_AbpUserLogins_LoginProvider_ProviderKey", |
||||
|
table: "AbpUserLogins", |
||||
|
columns: new[] { "LoginProvider", "ProviderKey" }); |
||||
|
|
||||
|
migrationBuilder.CreateIndex( |
||||
|
name: "IX_AbpUserRoles_RoleId_UserId", |
||||
|
table: "AbpUserRoles", |
||||
|
columns: new[] { "RoleId", "UserId" }); |
||||
|
|
||||
|
migrationBuilder.CreateIndex( |
||||
|
name: "IX_AbpUsers_Email", |
||||
|
table: "AbpUsers", |
||||
|
column: "Email"); |
||||
|
|
||||
|
migrationBuilder.CreateIndex( |
||||
|
name: "IX_AbpUsers_NormalizedEmail", |
||||
|
table: "AbpUsers", |
||||
|
column: "NormalizedEmail"); |
||||
|
|
||||
|
migrationBuilder.CreateIndex( |
||||
|
name: "IX_AbpUsers_NormalizedUserName", |
||||
|
table: "AbpUsers", |
||||
|
column: "NormalizedUserName"); |
||||
|
|
||||
|
migrationBuilder.CreateIndex( |
||||
|
name: "IX_AbpUsers_UserName", |
||||
|
table: "AbpUsers", |
||||
|
column: "UserName"); |
||||
|
|
||||
|
migrationBuilder.CreateIndex( |
||||
|
name: "IX_BlgPosts_BlogId", |
||||
|
table: "BlgPosts", |
||||
|
column: "BlogId"); |
||||
|
} |
||||
|
|
||||
|
protected override void Down(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.DropTable( |
||||
|
name: "AbpPermissionGrants"); |
||||
|
|
||||
|
migrationBuilder.DropTable( |
||||
|
name: "AbpRoleClaims"); |
||||
|
|
||||
|
migrationBuilder.DropTable( |
||||
|
name: "AbpSettings"); |
||||
|
|
||||
|
migrationBuilder.DropTable( |
||||
|
name: "AbpUserClaims"); |
||||
|
|
||||
|
migrationBuilder.DropTable( |
||||
|
name: "AbpUserLogins"); |
||||
|
|
||||
|
migrationBuilder.DropTable( |
||||
|
name: "AbpUserRoles"); |
||||
|
|
||||
|
migrationBuilder.DropTable( |
||||
|
name: "AbpUserTokens"); |
||||
|
|
||||
|
migrationBuilder.DropTable( |
||||
|
name: "BlgPosts"); |
||||
|
|
||||
|
migrationBuilder.DropTable( |
||||
|
name: "AbpRoles"); |
||||
|
|
||||
|
migrationBuilder.DropTable( |
||||
|
name: "AbpUsers"); |
||||
|
|
||||
|
migrationBuilder.DropTable( |
||||
|
name: "BlgBlogs"); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,648 @@ |
|||||
|
// <auto-generated />
|
||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore; |
||||
|
using Microsoft.EntityFrameworkCore.Infrastructure; |
||||
|
using Microsoft.EntityFrameworkCore.Metadata; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion; |
||||
|
using Volo.AbpWebSite.EntityFrameworkCore; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
[DbContext(typeof(AbpWebSiteDbContext))] |
||||
|
[Migration("20180906122509_Updates_20180906")] |
||||
|
partial class Updates_20180906 |
||||
|
{ |
||||
|
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.IdentityRole", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ConcurrencyStamp"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("NormalizedName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("NormalizedName"); |
||||
|
|
||||
|
b.ToTable("AbpRoles"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityRoleClaim", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ClaimType") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ClaimValue") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<Guid>("RoleId"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("RoleId"); |
||||
|
|
||||
|
b.ToTable("AbpRoleClaims"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUser", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<int>("AccessFailedCount") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("AccessFailedCount") |
||||
|
.HasDefaultValue(0); |
||||
|
|
||||
|
b.Property<string>("ConcurrencyStamp") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("ConcurrencyStamp") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("Email") |
||||
|
.HasColumnName("Email") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<bool>("EmailConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("EmailConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<bool>("LockoutEnabled") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("LockoutEnabled") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTimeOffset?>("LockoutEnd"); |
||||
|
|
||||
|
b.Property<string>("NormalizedEmail") |
||||
|
.HasColumnName("NormalizedEmail") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("NormalizedUserName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("NormalizedUserName") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("PasswordHash") |
||||
|
.HasColumnName("PasswordHash") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("PhoneNumber") |
||||
|
.HasColumnName("PhoneNumber") |
||||
|
.HasMaxLength(16); |
||||
|
|
||||
|
b.Property<bool>("PhoneNumberConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("PhoneNumberConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("SecurityStamp") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("SecurityStamp") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId") |
||||
|
.HasColumnName("TenantId"); |
||||
|
|
||||
|
b.Property<bool>("TwoFactorEnabled") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("TwoFactorEnabled") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("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<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ClaimType") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ClaimValue") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("UserId"); |
||||
|
|
||||
|
b.ToTable("AbpUserClaims"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserLogin", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<string>("LoginProvider") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderDisplayName") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(196); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("UserId", "LoginProvider"); |
||||
|
|
||||
|
b.HasIndex("LoginProvider", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpUserLogins"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserRole", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<Guid>("RoleId"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("UserId", "RoleId"); |
||||
|
|
||||
|
b.HasIndex("RoleId", "UserId"); |
||||
|
|
||||
|
b.ToTable("AbpUserRoles"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserToken", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<string>("LoginProvider") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("Name"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.Property<string>("Value"); |
||||
|
|
||||
|
b.HasKey("UserId", "LoginProvider", "Name"); |
||||
|
|
||||
|
b.ToTable("AbpUserTokens"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.PermissionManagement.PermissionGrant", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("Name", "ProviderName", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpPermissionGrants"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.SettingManagement.Setting", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderName") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("Value") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(2048); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("Name", "ProviderName", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpSettings"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Blogs.Blog", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<string>("Description") |
||||
|
.HasColumnName("Description") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Name") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("ShortName") |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgBlogs"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Comments.Comment", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<Guid>("PostId") |
||||
|
.HasColumnName("PostId"); |
||||
|
|
||||
|
b.Property<Guid?>("RepliedCommentId") |
||||
|
.HasColumnName("RepliedCommentId"); |
||||
|
|
||||
|
b.Property<string>("Text") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Text") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("PostId"); |
||||
|
|
||||
|
b.HasIndex("RepliedCommentId"); |
||||
|
|
||||
|
b.ToTable("BlgComments"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.Post", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<Guid>("BlogId") |
||||
|
.HasColumnName("BlogId"); |
||||
|
|
||||
|
b.Property<string>("Content") |
||||
|
.HasColumnName("Content") |
||||
|
.HasMaxLength(1048576); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<int>("ReadCount"); |
||||
|
|
||||
|
b.Property<string>("Title") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Title") |
||||
|
.HasMaxLength(512); |
||||
|
|
||||
|
b.Property<string>("Url") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Url") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("BlogId"); |
||||
|
|
||||
|
b.ToTable("BlgPosts"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.PostTag", b => |
||||
|
{ |
||||
|
b.Property<Guid>("PostId") |
||||
|
.HasColumnName("PostId"); |
||||
|
|
||||
|
b.Property<Guid>("TagId") |
||||
|
.HasColumnName("TagId"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId"); |
||||
|
|
||||
|
b.HasKey("PostId", "TagId"); |
||||
|
|
||||
|
b.HasIndex("TagId"); |
||||
|
|
||||
|
b.ToTable("BlgPostTags"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Tagging.Tag", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<string>("Description") |
||||
|
.HasColumnName("Description") |
||||
|
.HasMaxLength(512); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Name") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<int>("UsageCount") |
||||
|
.HasColumnName("UsageCount"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgTags"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Docs.Projects.Project", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("DefaultDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("DocumentStoreType"); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<string>("Format"); |
||||
|
|
||||
|
b.Property<string>("GoogleCustomSearchId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("NavigationDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("DocsProjects"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Utils.SolutionTemplating.DownloadInfo", b => |
||||
|
{ |
||||
|
b.Property<int>("Id") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); |
||||
|
|
||||
|
b.Property<int>("CreationDuration"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId"); |
||||
|
|
||||
|
b.Property<byte>("DatabaseProvider"); |
||||
|
|
||||
|
b.Property<string>("ProjectName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("TemplateName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(42); |
||||
|
|
||||
|
b.Property<string>("Version") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(20); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("Downloads"); |
||||
|
}); |
||||
|
|
||||
|
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); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Comments.Comment", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Posts.Post") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("PostId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
|
||||
|
b.HasOne("Volo.Blogging.Comments.Comment") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("RepliedCommentId"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.Post", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Blogs.Blog") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("BlogId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.PostTag", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Posts.Post") |
||||
|
.WithMany("Tags") |
||||
|
.HasForeignKey("PostId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
|
||||
|
b.HasOne("Volo.Blogging.Tagging.Tag") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("TagId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
}); |
||||
|
#pragma warning restore 612, 618
|
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,128 @@ |
|||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
public partial class Updates_20180906 : Migration |
||||
|
{ |
||||
|
protected override void Up(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.AddColumn<int>( |
||||
|
name: "ReadCount", |
||||
|
table: "BlgPosts", |
||||
|
nullable: false, |
||||
|
defaultValue: 0); |
||||
|
|
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "BlgComments", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
Id = table.Column<Guid>(nullable: false), |
||||
|
CreationTime = table.Column<DateTime>(nullable: false), |
||||
|
CreatorId = table.Column<Guid>(nullable: true), |
||||
|
LastModificationTime = table.Column<DateTime>(nullable: true), |
||||
|
LastModifierId = table.Column<Guid>(nullable: true), |
||||
|
IsDeleted = table.Column<bool>(nullable: false, defaultValue: false), |
||||
|
DeleterId = table.Column<Guid>(nullable: true), |
||||
|
DeletionTime = table.Column<DateTime>(nullable: true), |
||||
|
PostId = table.Column<Guid>(nullable: false), |
||||
|
RepliedCommentId = table.Column<Guid>(nullable: true), |
||||
|
Text = table.Column<string>(maxLength: 1024, nullable: false) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_BlgComments", x => x.Id); |
||||
|
table.ForeignKey( |
||||
|
name: "FK_BlgComments_BlgPosts_PostId", |
||||
|
column: x => x.PostId, |
||||
|
principalTable: "BlgPosts", |
||||
|
principalColumn: "Id", |
||||
|
onDelete: ReferentialAction.Cascade); |
||||
|
table.ForeignKey( |
||||
|
name: "FK_BlgComments_BlgComments_RepliedCommentId", |
||||
|
column: x => x.RepliedCommentId, |
||||
|
principalTable: "BlgComments", |
||||
|
principalColumn: "Id", |
||||
|
onDelete: ReferentialAction.Restrict); |
||||
|
}); |
||||
|
|
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "BlgTags", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
Id = table.Column<Guid>(nullable: false), |
||||
|
CreationTime = table.Column<DateTime>(nullable: false), |
||||
|
CreatorId = table.Column<Guid>(nullable: true), |
||||
|
LastModificationTime = table.Column<DateTime>(nullable: true), |
||||
|
LastModifierId = table.Column<Guid>(nullable: true), |
||||
|
IsDeleted = table.Column<bool>(nullable: false, defaultValue: false), |
||||
|
DeleterId = table.Column<Guid>(nullable: true), |
||||
|
DeletionTime = table.Column<DateTime>(nullable: true), |
||||
|
Name = table.Column<string>(maxLength: 64, nullable: false), |
||||
|
Description = table.Column<string>(maxLength: 512, nullable: true), |
||||
|
UsageCount = table.Column<int>(nullable: false) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_BlgTags", x => x.Id); |
||||
|
}); |
||||
|
|
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "BlgPostTags", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
CreationTime = table.Column<DateTime>(nullable: false), |
||||
|
CreatorId = table.Column<Guid>(nullable: true), |
||||
|
PostId = table.Column<Guid>(nullable: false), |
||||
|
TagId = table.Column<Guid>(nullable: false) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_BlgPostTags", x => new { x.PostId, x.TagId }); |
||||
|
table.ForeignKey( |
||||
|
name: "FK_BlgPostTags_BlgPosts_PostId", |
||||
|
column: x => x.PostId, |
||||
|
principalTable: "BlgPosts", |
||||
|
principalColumn: "Id", |
||||
|
onDelete: ReferentialAction.Cascade); |
||||
|
table.ForeignKey( |
||||
|
name: "FK_BlgPostTags_BlgTags_TagId", |
||||
|
column: x => x.TagId, |
||||
|
principalTable: "BlgTags", |
||||
|
principalColumn: "Id", |
||||
|
onDelete: ReferentialAction.Cascade); |
||||
|
}); |
||||
|
|
||||
|
migrationBuilder.CreateIndex( |
||||
|
name: "IX_BlgComments_PostId", |
||||
|
table: "BlgComments", |
||||
|
column: "PostId"); |
||||
|
|
||||
|
migrationBuilder.CreateIndex( |
||||
|
name: "IX_BlgComments_RepliedCommentId", |
||||
|
table: "BlgComments", |
||||
|
column: "RepliedCommentId"); |
||||
|
|
||||
|
migrationBuilder.CreateIndex( |
||||
|
name: "IX_BlgPostTags_TagId", |
||||
|
table: "BlgPostTags", |
||||
|
column: "TagId"); |
||||
|
} |
||||
|
|
||||
|
protected override void Down(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.DropTable( |
||||
|
name: "BlgComments"); |
||||
|
|
||||
|
migrationBuilder.DropTable( |
||||
|
name: "BlgPostTags"); |
||||
|
|
||||
|
migrationBuilder.DropTable( |
||||
|
name: "BlgTags"); |
||||
|
|
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "ReadCount", |
||||
|
table: "BlgPosts"); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,652 @@ |
|||||
|
// <auto-generated />
|
||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore; |
||||
|
using Microsoft.EntityFrameworkCore.Infrastructure; |
||||
|
using Microsoft.EntityFrameworkCore.Metadata; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion; |
||||
|
using Volo.AbpWebSite.EntityFrameworkCore; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
[DbContext(typeof(AbpWebSiteDbContext))] |
||||
|
[Migration("20180911135940_Added_CoverImage")] |
||||
|
partial class Added_CoverImage |
||||
|
{ |
||||
|
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.IdentityRole", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ConcurrencyStamp"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("NormalizedName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("NormalizedName"); |
||||
|
|
||||
|
b.ToTable("AbpRoles"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityRoleClaim", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ClaimType") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ClaimValue") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<Guid>("RoleId"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("RoleId"); |
||||
|
|
||||
|
b.ToTable("AbpRoleClaims"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUser", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<int>("AccessFailedCount") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("AccessFailedCount") |
||||
|
.HasDefaultValue(0); |
||||
|
|
||||
|
b.Property<string>("ConcurrencyStamp") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("ConcurrencyStamp") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("Email") |
||||
|
.HasColumnName("Email") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<bool>("EmailConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("EmailConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<bool>("LockoutEnabled") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("LockoutEnabled") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTimeOffset?>("LockoutEnd"); |
||||
|
|
||||
|
b.Property<string>("NormalizedEmail") |
||||
|
.HasColumnName("NormalizedEmail") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("NormalizedUserName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("NormalizedUserName") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("PasswordHash") |
||||
|
.HasColumnName("PasswordHash") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("PhoneNumber") |
||||
|
.HasColumnName("PhoneNumber") |
||||
|
.HasMaxLength(16); |
||||
|
|
||||
|
b.Property<bool>("PhoneNumberConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("PhoneNumberConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("SecurityStamp") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("SecurityStamp") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId") |
||||
|
.HasColumnName("TenantId"); |
||||
|
|
||||
|
b.Property<bool>("TwoFactorEnabled") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("TwoFactorEnabled") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("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<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ClaimType") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ClaimValue") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("UserId"); |
||||
|
|
||||
|
b.ToTable("AbpUserClaims"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserLogin", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<string>("LoginProvider") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderDisplayName") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(196); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("UserId", "LoginProvider"); |
||||
|
|
||||
|
b.HasIndex("LoginProvider", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpUserLogins"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserRole", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<Guid>("RoleId"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("UserId", "RoleId"); |
||||
|
|
||||
|
b.HasIndex("RoleId", "UserId"); |
||||
|
|
||||
|
b.ToTable("AbpUserRoles"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserToken", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<string>("LoginProvider") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("Name"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.Property<string>("Value"); |
||||
|
|
||||
|
b.HasKey("UserId", "LoginProvider", "Name"); |
||||
|
|
||||
|
b.ToTable("AbpUserTokens"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.PermissionManagement.PermissionGrant", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("Name", "ProviderName", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpPermissionGrants"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.SettingManagement.Setting", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderName") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("Value") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(2048); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("Name", "ProviderName", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpSettings"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Blogs.Blog", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<string>("Description") |
||||
|
.HasColumnName("Description") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Name") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("ShortName") |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgBlogs"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Comments.Comment", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<Guid>("PostId") |
||||
|
.HasColumnName("PostId"); |
||||
|
|
||||
|
b.Property<Guid?>("RepliedCommentId") |
||||
|
.HasColumnName("RepliedCommentId"); |
||||
|
|
||||
|
b.Property<string>("Text") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Text") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("PostId"); |
||||
|
|
||||
|
b.HasIndex("RepliedCommentId"); |
||||
|
|
||||
|
b.ToTable("BlgComments"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.Post", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<Guid>("BlogId") |
||||
|
.HasColumnName("BlogId"); |
||||
|
|
||||
|
b.Property<string>("Content") |
||||
|
.HasColumnName("Content") |
||||
|
.HasMaxLength(1048576); |
||||
|
|
||||
|
b.Property<string>("CoverImage") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("CoverImage"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<int>("ReadCount"); |
||||
|
|
||||
|
b.Property<string>("Title") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Title") |
||||
|
.HasMaxLength(512); |
||||
|
|
||||
|
b.Property<string>("Url") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Url") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("BlogId"); |
||||
|
|
||||
|
b.ToTable("BlgPosts"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.PostTag", b => |
||||
|
{ |
||||
|
b.Property<Guid>("PostId") |
||||
|
.HasColumnName("PostId"); |
||||
|
|
||||
|
b.Property<Guid>("TagId") |
||||
|
.HasColumnName("TagId"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId"); |
||||
|
|
||||
|
b.HasKey("PostId", "TagId"); |
||||
|
|
||||
|
b.HasIndex("TagId"); |
||||
|
|
||||
|
b.ToTable("BlgPostTags"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Tagging.Tag", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<string>("Description") |
||||
|
.HasColumnName("Description") |
||||
|
.HasMaxLength(512); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Name") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<int>("UsageCount") |
||||
|
.HasColumnName("UsageCount"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgTags"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Docs.Projects.Project", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("DefaultDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("DocumentStoreType"); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<string>("Format"); |
||||
|
|
||||
|
b.Property<string>("GoogleCustomSearchId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("NavigationDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("DocsProjects"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Utils.SolutionTemplating.DownloadInfo", b => |
||||
|
{ |
||||
|
b.Property<int>("Id") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); |
||||
|
|
||||
|
b.Property<int>("CreationDuration"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId"); |
||||
|
|
||||
|
b.Property<byte>("DatabaseProvider"); |
||||
|
|
||||
|
b.Property<string>("ProjectName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("TemplateName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(42); |
||||
|
|
||||
|
b.Property<string>("Version") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(20); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("Downloads"); |
||||
|
}); |
||||
|
|
||||
|
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); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Comments.Comment", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Posts.Post") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("PostId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
|
||||
|
b.HasOne("Volo.Blogging.Comments.Comment") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("RepliedCommentId"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.Post", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Blogs.Blog") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("BlogId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.PostTag", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Posts.Post") |
||||
|
.WithMany("Tags") |
||||
|
.HasForeignKey("PostId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
|
||||
|
b.HasOne("Volo.Blogging.Tagging.Tag") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("TagId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
}); |
||||
|
#pragma warning restore 612, 618
|
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,23 @@ |
|||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
public partial class Added_CoverImage : Migration |
||||
|
{ |
||||
|
protected override void Up(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.AddColumn<string>( |
||||
|
name: "CoverImage", |
||||
|
table: "BlgPosts", |
||||
|
nullable: false, |
||||
|
defaultValue: ""); |
||||
|
} |
||||
|
|
||||
|
protected override void Down(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "CoverImage", |
||||
|
table: "BlgPosts"); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,691 @@ |
|||||
|
// <auto-generated />
|
||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore; |
||||
|
using Microsoft.EntityFrameworkCore.Infrastructure; |
||||
|
using Microsoft.EntityFrameworkCore.Metadata; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion; |
||||
|
using Volo.AbpWebSite.EntityFrameworkCore; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
[DbContext(typeof(AbpWebSiteDbContext))] |
||||
|
[Migration("20180912114057_Blog_Added_BlogUser")] |
||||
|
partial class Blog_Added_BlogUser |
||||
|
{ |
||||
|
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.IdentityRole", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ConcurrencyStamp"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("NormalizedName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("NormalizedName"); |
||||
|
|
||||
|
b.ToTable("AbpRoles"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityRoleClaim", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ClaimType") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ClaimValue") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<Guid>("RoleId"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("RoleId"); |
||||
|
|
||||
|
b.ToTable("AbpRoleClaims"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUser", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<int>("AccessFailedCount") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("AccessFailedCount") |
||||
|
.HasDefaultValue(0); |
||||
|
|
||||
|
b.Property<string>("ConcurrencyStamp") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("ConcurrencyStamp") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("Email") |
||||
|
.HasColumnName("Email") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<bool>("EmailConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("EmailConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<bool>("LockoutEnabled") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("LockoutEnabled") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTimeOffset?>("LockoutEnd"); |
||||
|
|
||||
|
b.Property<string>("NormalizedEmail") |
||||
|
.HasColumnName("NormalizedEmail") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("NormalizedUserName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("NormalizedUserName") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("PasswordHash") |
||||
|
.HasColumnName("PasswordHash") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("PhoneNumber") |
||||
|
.HasColumnName("PhoneNumber") |
||||
|
.HasMaxLength(16); |
||||
|
|
||||
|
b.Property<bool>("PhoneNumberConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("PhoneNumberConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("SecurityStamp") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("SecurityStamp") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId") |
||||
|
.HasColumnName("TenantId"); |
||||
|
|
||||
|
b.Property<bool>("TwoFactorEnabled") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("TwoFactorEnabled") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("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<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ClaimType") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ClaimValue") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("UserId"); |
||||
|
|
||||
|
b.ToTable("AbpUserClaims"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserLogin", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<string>("LoginProvider") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderDisplayName") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(196); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("UserId", "LoginProvider"); |
||||
|
|
||||
|
b.HasIndex("LoginProvider", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpUserLogins"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserRole", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<Guid>("RoleId"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("UserId", "RoleId"); |
||||
|
|
||||
|
b.HasIndex("RoleId", "UserId"); |
||||
|
|
||||
|
b.ToTable("AbpUserRoles"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserToken", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<string>("LoginProvider") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("Name"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.Property<string>("Value"); |
||||
|
|
||||
|
b.HasKey("UserId", "LoginProvider", "Name"); |
||||
|
|
||||
|
b.ToTable("AbpUserTokens"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.PermissionManagement.PermissionGrant", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("Name", "ProviderName", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpPermissionGrants"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.SettingManagement.Setting", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderName") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("Value") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(2048); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("Name", "ProviderName", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpSettings"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Blogs.Blog", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<string>("Description") |
||||
|
.HasColumnName("Description") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Name") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("ShortName") |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgBlogs"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Comments.Comment", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<Guid>("PostId") |
||||
|
.HasColumnName("PostId"); |
||||
|
|
||||
|
b.Property<Guid?>("RepliedCommentId") |
||||
|
.HasColumnName("RepliedCommentId"); |
||||
|
|
||||
|
b.Property<string>("Text") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Text") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("PostId"); |
||||
|
|
||||
|
b.HasIndex("RepliedCommentId"); |
||||
|
|
||||
|
b.ToTable("BlgComments"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.Post", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<Guid>("BlogId") |
||||
|
.HasColumnName("BlogId"); |
||||
|
|
||||
|
b.Property<string>("Content") |
||||
|
.HasColumnName("Content") |
||||
|
.HasMaxLength(1048576); |
||||
|
|
||||
|
b.Property<string>("CoverImage") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("CoverImage"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<int>("ReadCount"); |
||||
|
|
||||
|
b.Property<string>("Title") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Title") |
||||
|
.HasMaxLength(512); |
||||
|
|
||||
|
b.Property<string>("Url") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Url") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("BlogId"); |
||||
|
|
||||
|
b.ToTable("BlgPosts"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.PostTag", b => |
||||
|
{ |
||||
|
b.Property<Guid>("PostId") |
||||
|
.HasColumnName("PostId"); |
||||
|
|
||||
|
b.Property<Guid>("TagId") |
||||
|
.HasColumnName("TagId"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId"); |
||||
|
|
||||
|
b.HasKey("PostId", "TagId"); |
||||
|
|
||||
|
b.HasIndex("TagId"); |
||||
|
|
||||
|
b.ToTable("BlgPostTags"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Tagging.Tag", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<string>("Description") |
||||
|
.HasColumnName("Description") |
||||
|
.HasMaxLength(512); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Name") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<int>("UsageCount") |
||||
|
.HasColumnName("UsageCount"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgTags"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Users.BlogUser", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Email") |
||||
|
.HasColumnName("Email") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<bool>("EmailConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("EmailConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<string>("PhoneNumber") |
||||
|
.HasColumnName("PhoneNumber") |
||||
|
.HasMaxLength(16); |
||||
|
|
||||
|
b.Property<bool>("PhoneNumberConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("PhoneNumberConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId") |
||||
|
.HasColumnName("TenantId"); |
||||
|
|
||||
|
b.Property<string>("UserName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("UserName") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgUsers"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Docs.Projects.Project", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("DefaultDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("DocumentStoreType"); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<string>("Format"); |
||||
|
|
||||
|
b.Property<string>("GoogleCustomSearchId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("NavigationDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("DocsProjects"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Utils.SolutionTemplating.DownloadInfo", b => |
||||
|
{ |
||||
|
b.Property<int>("Id") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); |
||||
|
|
||||
|
b.Property<int>("CreationDuration"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId"); |
||||
|
|
||||
|
b.Property<byte>("DatabaseProvider"); |
||||
|
|
||||
|
b.Property<string>("ProjectName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("TemplateName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(42); |
||||
|
|
||||
|
b.Property<string>("Version") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(20); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("Downloads"); |
||||
|
}); |
||||
|
|
||||
|
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); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Comments.Comment", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Posts.Post") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("PostId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
|
||||
|
b.HasOne("Volo.Blogging.Comments.Comment") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("RepliedCommentId"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.Post", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Blogs.Blog") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("BlogId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.PostTag", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Posts.Post") |
||||
|
.WithMany("Tags") |
||||
|
.HasForeignKey("PostId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
|
||||
|
b.HasOne("Volo.Blogging.Tagging.Tag") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("TagId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
}); |
||||
|
#pragma warning restore 612, 618
|
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,35 @@ |
|||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
public partial class Blog_Added_BlogUser : Migration |
||||
|
{ |
||||
|
protected override void Up(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "BlgUsers", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
Id = table.Column<Guid>(nullable: false), |
||||
|
TenantId = table.Column<Guid>(nullable: true), |
||||
|
UserName = table.Column<string>(maxLength: 256, nullable: false), |
||||
|
Email = table.Column<string>(maxLength: 256, nullable: true), |
||||
|
EmailConfirmed = table.Column<bool>(nullable: false, defaultValue: false), |
||||
|
PhoneNumber = table.Column<string>(maxLength: 16, nullable: true), |
||||
|
PhoneNumberConfirmed = table.Column<bool>(nullable: false, defaultValue: false), |
||||
|
ExtraProperties = table.Column<string>(nullable: true) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_BlgUsers", x => x.Id); |
||||
|
}); |
||||
|
} |
||||
|
|
||||
|
protected override void Down(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.DropTable( |
||||
|
name: "BlgUsers"); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,711 @@ |
|||||
|
// <auto-generated />
|
||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore; |
||||
|
using Microsoft.EntityFrameworkCore.Infrastructure; |
||||
|
using Microsoft.EntityFrameworkCore.Metadata; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion; |
||||
|
using Volo.AbpWebSite.EntityFrameworkCore; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
[DbContext(typeof(AbpWebSiteDbContext))] |
||||
|
[Migration("20180919064650_Blog_Added_SocialLinks")] |
||||
|
partial class Blog_Added_SocialLinks |
||||
|
{ |
||||
|
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.IdentityRole", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ConcurrencyStamp"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("NormalizedName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("NormalizedName"); |
||||
|
|
||||
|
b.ToTable("AbpRoles"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityRoleClaim", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ClaimType") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ClaimValue") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<Guid>("RoleId"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("RoleId"); |
||||
|
|
||||
|
b.ToTable("AbpRoleClaims"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUser", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<int>("AccessFailedCount") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("AccessFailedCount") |
||||
|
.HasDefaultValue(0); |
||||
|
|
||||
|
b.Property<string>("ConcurrencyStamp") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("ConcurrencyStamp") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("Email") |
||||
|
.HasColumnName("Email") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<bool>("EmailConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("EmailConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<bool>("LockoutEnabled") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("LockoutEnabled") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTimeOffset?>("LockoutEnd"); |
||||
|
|
||||
|
b.Property<string>("NormalizedEmail") |
||||
|
.HasColumnName("NormalizedEmail") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("NormalizedUserName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("NormalizedUserName") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("PasswordHash") |
||||
|
.HasColumnName("PasswordHash") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("PhoneNumber") |
||||
|
.HasColumnName("PhoneNumber") |
||||
|
.HasMaxLength(16); |
||||
|
|
||||
|
b.Property<bool>("PhoneNumberConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("PhoneNumberConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("SecurityStamp") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("SecurityStamp") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId") |
||||
|
.HasColumnName("TenantId"); |
||||
|
|
||||
|
b.Property<bool>("TwoFactorEnabled") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("TwoFactorEnabled") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("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<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ClaimType") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ClaimValue") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("UserId"); |
||||
|
|
||||
|
b.ToTable("AbpUserClaims"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserLogin", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<string>("LoginProvider") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderDisplayName") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(196); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("UserId", "LoginProvider"); |
||||
|
|
||||
|
b.HasIndex("LoginProvider", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpUserLogins"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserRole", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<Guid>("RoleId"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("UserId", "RoleId"); |
||||
|
|
||||
|
b.HasIndex("RoleId", "UserId"); |
||||
|
|
||||
|
b.ToTable("AbpUserRoles"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserToken", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<string>("LoginProvider") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("Name"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.Property<string>("Value"); |
||||
|
|
||||
|
b.HasKey("UserId", "LoginProvider", "Name"); |
||||
|
|
||||
|
b.ToTable("AbpUserTokens"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.PermissionManagement.PermissionGrant", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("Name", "ProviderName", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpPermissionGrants"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.SettingManagement.Setting", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderName") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("Value") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(2048); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("Name", "ProviderName", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpSettings"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Blogs.Blog", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<string>("Description") |
||||
|
.HasColumnName("Description") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<string>("Facebook") |
||||
|
.HasColumnName("Facebook") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("Github") |
||||
|
.HasColumnName("Github") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("Instagram") |
||||
|
.HasColumnName("Instagram") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Name") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("ShortName") |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.Property<string>("StackOverflow") |
||||
|
.HasColumnName("StackOverflow") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("Twitter") |
||||
|
.HasColumnName("Twitter") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgBlogs"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Comments.Comment", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<Guid>("PostId") |
||||
|
.HasColumnName("PostId"); |
||||
|
|
||||
|
b.Property<Guid?>("RepliedCommentId") |
||||
|
.HasColumnName("RepliedCommentId"); |
||||
|
|
||||
|
b.Property<string>("Text") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Text") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("PostId"); |
||||
|
|
||||
|
b.HasIndex("RepliedCommentId"); |
||||
|
|
||||
|
b.ToTable("BlgComments"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.Post", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<Guid>("BlogId") |
||||
|
.HasColumnName("BlogId"); |
||||
|
|
||||
|
b.Property<string>("Content") |
||||
|
.HasColumnName("Content") |
||||
|
.HasMaxLength(1048576); |
||||
|
|
||||
|
b.Property<string>("CoverImage") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("CoverImage"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<int>("ReadCount"); |
||||
|
|
||||
|
b.Property<string>("Title") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Title") |
||||
|
.HasMaxLength(512); |
||||
|
|
||||
|
b.Property<string>("Url") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Url") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("BlogId"); |
||||
|
|
||||
|
b.ToTable("BlgPosts"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.PostTag", b => |
||||
|
{ |
||||
|
b.Property<Guid>("PostId") |
||||
|
.HasColumnName("PostId"); |
||||
|
|
||||
|
b.Property<Guid>("TagId") |
||||
|
.HasColumnName("TagId"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId"); |
||||
|
|
||||
|
b.HasKey("PostId", "TagId"); |
||||
|
|
||||
|
b.HasIndex("TagId"); |
||||
|
|
||||
|
b.ToTable("BlgPostTags"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Tagging.Tag", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<string>("Description") |
||||
|
.HasColumnName("Description") |
||||
|
.HasMaxLength(512); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Name") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<int>("UsageCount") |
||||
|
.HasColumnName("UsageCount"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgTags"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Users.BlogUser", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Email") |
||||
|
.HasColumnName("Email") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<bool>("EmailConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("EmailConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<string>("PhoneNumber") |
||||
|
.HasColumnName("PhoneNumber") |
||||
|
.HasMaxLength(16); |
||||
|
|
||||
|
b.Property<bool>("PhoneNumberConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("PhoneNumberConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId") |
||||
|
.HasColumnName("TenantId"); |
||||
|
|
||||
|
b.Property<string>("UserName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("UserName") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgUsers"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Docs.Projects.Project", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("DefaultDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("DocumentStoreType"); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<string>("Format"); |
||||
|
|
||||
|
b.Property<string>("GoogleCustomSearchId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("NavigationDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("DocsProjects"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Utils.SolutionTemplating.DownloadInfo", b => |
||||
|
{ |
||||
|
b.Property<int>("Id") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); |
||||
|
|
||||
|
b.Property<int>("CreationDuration"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId"); |
||||
|
|
||||
|
b.Property<byte>("DatabaseProvider"); |
||||
|
|
||||
|
b.Property<string>("ProjectName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("TemplateName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(42); |
||||
|
|
||||
|
b.Property<string>("Version") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(20); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("Downloads"); |
||||
|
}); |
||||
|
|
||||
|
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); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Comments.Comment", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Posts.Post") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("PostId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
|
||||
|
b.HasOne("Volo.Blogging.Comments.Comment") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("RepliedCommentId"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.Post", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Blogs.Blog") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("BlogId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.PostTag", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Posts.Post") |
||||
|
.WithMany("Tags") |
||||
|
.HasForeignKey("PostId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
|
||||
|
b.HasOne("Volo.Blogging.Tagging.Tag") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("TagId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
}); |
||||
|
#pragma warning restore 612, 618
|
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,63 @@ |
|||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
public partial class Blog_Added_SocialLinks : Migration |
||||
|
{ |
||||
|
protected override void Up(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.AddColumn<string>( |
||||
|
name: "Facebook", |
||||
|
table: "BlgBlogs", |
||||
|
maxLength: 128, |
||||
|
nullable: true); |
||||
|
|
||||
|
migrationBuilder.AddColumn<string>( |
||||
|
name: "Github", |
||||
|
table: "BlgBlogs", |
||||
|
maxLength: 128, |
||||
|
nullable: true); |
||||
|
|
||||
|
migrationBuilder.AddColumn<string>( |
||||
|
name: "Instagram", |
||||
|
table: "BlgBlogs", |
||||
|
maxLength: 128, |
||||
|
nullable: true); |
||||
|
|
||||
|
migrationBuilder.AddColumn<string>( |
||||
|
name: "StackOverflow", |
||||
|
table: "BlgBlogs", |
||||
|
maxLength: 128, |
||||
|
nullable: true); |
||||
|
|
||||
|
migrationBuilder.AddColumn<string>( |
||||
|
name: "Twitter", |
||||
|
table: "BlgBlogs", |
||||
|
maxLength: 128, |
||||
|
nullable: true); |
||||
|
} |
||||
|
|
||||
|
protected override void Down(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "Facebook", |
||||
|
table: "BlgBlogs"); |
||||
|
|
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "Github", |
||||
|
table: "BlgBlogs"); |
||||
|
|
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "Instagram", |
||||
|
table: "BlgBlogs"); |
||||
|
|
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "StackOverflow", |
||||
|
table: "BlgBlogs"); |
||||
|
|
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "Twitter", |
||||
|
table: "BlgBlogs"); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,722 @@ |
|||||
|
// <auto-generated />
|
||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore; |
||||
|
using Microsoft.EntityFrameworkCore.Infrastructure; |
||||
|
using Microsoft.EntityFrameworkCore.Metadata; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion; |
||||
|
using Volo.AbpWebSite.EntityFrameworkCore; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
[DbContext(typeof(AbpWebSiteDbContext))] |
||||
|
[Migration("20181005071719_Upgraded_Docs")] |
||||
|
partial class Upgraded_Docs |
||||
|
{ |
||||
|
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<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Description") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<bool>("IsStatic"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("Regex") |
||||
|
.HasMaxLength(512); |
||||
|
|
||||
|
b.Property<string>("RegexDescription") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<bool>("Required"); |
||||
|
|
||||
|
b.Property<int>("ValueType"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("AbpClaimTypes"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityRole", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ConcurrencyStamp"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("NormalizedName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("NormalizedName"); |
||||
|
|
||||
|
b.ToTable("AbpRoles"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityRoleClaim", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ClaimType") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ClaimValue") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<Guid>("RoleId"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("RoleId"); |
||||
|
|
||||
|
b.ToTable("AbpRoleClaims"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUser", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<int>("AccessFailedCount") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("AccessFailedCount") |
||||
|
.HasDefaultValue(0); |
||||
|
|
||||
|
b.Property<string>("ConcurrencyStamp") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("ConcurrencyStamp") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("Email") |
||||
|
.HasColumnName("Email") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<bool>("EmailConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("EmailConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<bool>("LockoutEnabled") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("LockoutEnabled") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTimeOffset?>("LockoutEnd"); |
||||
|
|
||||
|
b.Property<string>("NormalizedEmail") |
||||
|
.HasColumnName("NormalizedEmail") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("NormalizedUserName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("NormalizedUserName") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("PasswordHash") |
||||
|
.HasColumnName("PasswordHash") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("PhoneNumber") |
||||
|
.HasColumnName("PhoneNumber") |
||||
|
.HasMaxLength(16); |
||||
|
|
||||
|
b.Property<bool>("PhoneNumberConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("PhoneNumberConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("SecurityStamp") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("SecurityStamp") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId") |
||||
|
.HasColumnName("TenantId"); |
||||
|
|
||||
|
b.Property<bool>("TwoFactorEnabled") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("TwoFactorEnabled") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("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<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ClaimType") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ClaimValue") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("UserId"); |
||||
|
|
||||
|
b.ToTable("AbpUserClaims"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserLogin", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<string>("LoginProvider") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderDisplayName") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(196); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("UserId", "LoginProvider"); |
||||
|
|
||||
|
b.HasIndex("LoginProvider", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpUserLogins"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserRole", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<Guid>("RoleId"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("UserId", "RoleId"); |
||||
|
|
||||
|
b.HasIndex("RoleId", "UserId"); |
||||
|
|
||||
|
b.ToTable("AbpUserRoles"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserToken", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<string>("LoginProvider") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("Name"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.Property<string>("Value"); |
||||
|
|
||||
|
b.HasKey("UserId", "LoginProvider", "Name"); |
||||
|
|
||||
|
b.ToTable("AbpUserTokens"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.PermissionManagement.PermissionGrant", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("Name", "ProviderName", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpPermissionGrants"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.SettingManagement.Setting", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderName") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("Value") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(2048); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("Name", "ProviderName", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpSettings"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Blogs.Blog", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<string>("Description") |
||||
|
.HasColumnName("Description") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Name") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("ShortName") |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgBlogs"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Comments.Comment", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<Guid>("PostId") |
||||
|
.HasColumnName("PostId"); |
||||
|
|
||||
|
b.Property<Guid?>("RepliedCommentId") |
||||
|
.HasColumnName("RepliedCommentId"); |
||||
|
|
||||
|
b.Property<string>("Text") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Text") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("PostId"); |
||||
|
|
||||
|
b.HasIndex("RepliedCommentId"); |
||||
|
|
||||
|
b.ToTable("BlgComments"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.Post", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<Guid>("BlogId") |
||||
|
.HasColumnName("BlogId"); |
||||
|
|
||||
|
b.Property<string>("Content") |
||||
|
.HasColumnName("Content") |
||||
|
.HasMaxLength(1048576); |
||||
|
|
||||
|
b.Property<string>("CoverImage") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("CoverImage"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<int>("ReadCount"); |
||||
|
|
||||
|
b.Property<string>("Title") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Title") |
||||
|
.HasMaxLength(512); |
||||
|
|
||||
|
b.Property<string>("Url") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Url") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("BlogId"); |
||||
|
|
||||
|
b.ToTable("BlgPosts"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.PostTag", b => |
||||
|
{ |
||||
|
b.Property<Guid>("PostId") |
||||
|
.HasColumnName("PostId"); |
||||
|
|
||||
|
b.Property<Guid>("TagId") |
||||
|
.HasColumnName("TagId"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId"); |
||||
|
|
||||
|
b.HasKey("PostId", "TagId"); |
||||
|
|
||||
|
b.HasIndex("TagId"); |
||||
|
|
||||
|
b.ToTable("BlgPostTags"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Tagging.Tag", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<string>("Description") |
||||
|
.HasColumnName("Description") |
||||
|
.HasMaxLength(512); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Name") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<int>("UsageCount") |
||||
|
.HasColumnName("UsageCount"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgTags"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Users.BlogUser", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Email") |
||||
|
.HasColumnName("Email") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<bool>("EmailConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("EmailConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<string>("PhoneNumber") |
||||
|
.HasColumnName("PhoneNumber") |
||||
|
.HasMaxLength(16); |
||||
|
|
||||
|
b.Property<bool>("PhoneNumberConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("PhoneNumberConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId") |
||||
|
.HasColumnName("TenantId"); |
||||
|
|
||||
|
b.Property<string>("UserName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("UserName") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgUsers"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Docs.Projects.Project", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("DefaultDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("DocumentStoreType"); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<string>("Format"); |
||||
|
|
||||
|
b.Property<string>("GoogleCustomSearchId"); |
||||
|
|
||||
|
b.Property<string>("MainWebsiteUrl"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("NavigationDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("DocsProjects"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Utils.SolutionTemplating.DownloadInfo", b => |
||||
|
{ |
||||
|
b.Property<int>("Id") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); |
||||
|
|
||||
|
b.Property<int>("CreationDuration"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId"); |
||||
|
|
||||
|
b.Property<byte>("DatabaseProvider"); |
||||
|
|
||||
|
b.Property<string>("ProjectName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("TemplateName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(42); |
||||
|
|
||||
|
b.Property<string>("Version") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(20); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("Downloads"); |
||||
|
}); |
||||
|
|
||||
|
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); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Comments.Comment", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Posts.Post") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("PostId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
|
||||
|
b.HasOne("Volo.Blogging.Comments.Comment") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("RepliedCommentId"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.Post", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Blogs.Blog") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("BlogId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.PostTag", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Posts.Post") |
||||
|
.WithMany("Tags") |
||||
|
.HasForeignKey("PostId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
|
||||
|
b.HasOne("Volo.Blogging.Tagging.Tag") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("TagId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
}); |
||||
|
#pragma warning restore 612, 618
|
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,94 @@ |
|||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore.Migrations; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
public partial class Upgraded_Docs : Migration |
||||
|
{ |
||||
|
protected override void Up(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "Facebook", |
||||
|
table: "BlgBlogs"); |
||||
|
|
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "Github", |
||||
|
table: "BlgBlogs"); |
||||
|
|
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "Instagram", |
||||
|
table: "BlgBlogs"); |
||||
|
|
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "StackOverflow", |
||||
|
table: "BlgBlogs"); |
||||
|
|
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "Twitter", |
||||
|
table: "BlgBlogs"); |
||||
|
|
||||
|
migrationBuilder.AddColumn<string>( |
||||
|
name: "MainWebsiteUrl", |
||||
|
table: "DocsProjects", |
||||
|
nullable: true); |
||||
|
|
||||
|
migrationBuilder.CreateTable( |
||||
|
name: "AbpClaimTypes", |
||||
|
columns: table => new |
||||
|
{ |
||||
|
Id = table.Column<Guid>(nullable: false), |
||||
|
Name = table.Column<string>(maxLength: 128, nullable: false), |
||||
|
Required = table.Column<bool>(nullable: false), |
||||
|
IsStatic = table.Column<bool>(nullable: false), |
||||
|
Regex = table.Column<string>(maxLength: 512, nullable: true), |
||||
|
RegexDescription = table.Column<string>(maxLength: 128, nullable: true), |
||||
|
Description = table.Column<string>(maxLength: 256, nullable: true), |
||||
|
ValueType = table.Column<int>(nullable: false) |
||||
|
}, |
||||
|
constraints: table => |
||||
|
{ |
||||
|
table.PrimaryKey("PK_AbpClaimTypes", x => x.Id); |
||||
|
}); |
||||
|
} |
||||
|
|
||||
|
protected override void Down(MigrationBuilder migrationBuilder) |
||||
|
{ |
||||
|
migrationBuilder.DropTable( |
||||
|
name: "AbpClaimTypes"); |
||||
|
|
||||
|
migrationBuilder.DropColumn( |
||||
|
name: "MainWebsiteUrl", |
||||
|
table: "DocsProjects"); |
||||
|
|
||||
|
migrationBuilder.AddColumn<string>( |
||||
|
name: "Facebook", |
||||
|
table: "BlgBlogs", |
||||
|
maxLength: 128, |
||||
|
nullable: true); |
||||
|
|
||||
|
migrationBuilder.AddColumn<string>( |
||||
|
name: "Github", |
||||
|
table: "BlgBlogs", |
||||
|
maxLength: 128, |
||||
|
nullable: true); |
||||
|
|
||||
|
migrationBuilder.AddColumn<string>( |
||||
|
name: "Instagram", |
||||
|
table: "BlgBlogs", |
||||
|
maxLength: 128, |
||||
|
nullable: true); |
||||
|
|
||||
|
migrationBuilder.AddColumn<string>( |
||||
|
name: "StackOverflow", |
||||
|
table: "BlgBlogs", |
||||
|
maxLength: 128, |
||||
|
nullable: true); |
||||
|
|
||||
|
migrationBuilder.AddColumn<string>( |
||||
|
name: "Twitter", |
||||
|
table: "BlgBlogs", |
||||
|
maxLength: 128, |
||||
|
nullable: true); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,720 @@ |
|||||
|
// <auto-generated />
|
||||
|
using System; |
||||
|
using Microsoft.EntityFrameworkCore; |
||||
|
using Microsoft.EntityFrameworkCore.Infrastructure; |
||||
|
using Microsoft.EntityFrameworkCore.Metadata; |
||||
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion; |
||||
|
using Volo.AbpWebSite.EntityFrameworkCore; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore.Migrations |
||||
|
{ |
||||
|
[DbContext(typeof(AbpWebSiteDbContext))] |
||||
|
partial class AbpWebSiteDbContextModelSnapshot : ModelSnapshot |
||||
|
{ |
||||
|
protected override void BuildModel(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<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Description") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<bool>("IsStatic"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("Regex") |
||||
|
.HasMaxLength(512); |
||||
|
|
||||
|
b.Property<string>("RegexDescription") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<bool>("Required"); |
||||
|
|
||||
|
b.Property<int>("ValueType"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("AbpClaimTypes"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityRole", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ConcurrencyStamp"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("NormalizedName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("NormalizedName"); |
||||
|
|
||||
|
b.ToTable("AbpRoles"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityRoleClaim", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ClaimType") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ClaimValue") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<Guid>("RoleId"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("RoleId"); |
||||
|
|
||||
|
b.ToTable("AbpRoleClaims"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUser", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<int>("AccessFailedCount") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("AccessFailedCount") |
||||
|
.HasDefaultValue(0); |
||||
|
|
||||
|
b.Property<string>("ConcurrencyStamp") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("ConcurrencyStamp") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("Email") |
||||
|
.HasColumnName("Email") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<bool>("EmailConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("EmailConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<bool>("LockoutEnabled") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("LockoutEnabled") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTimeOffset?>("LockoutEnd"); |
||||
|
|
||||
|
b.Property<string>("NormalizedEmail") |
||||
|
.HasColumnName("NormalizedEmail") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("NormalizedUserName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("NormalizedUserName") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("PasswordHash") |
||||
|
.HasColumnName("PasswordHash") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("PhoneNumber") |
||||
|
.HasColumnName("PhoneNumber") |
||||
|
.HasMaxLength(16); |
||||
|
|
||||
|
b.Property<bool>("PhoneNumberConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("PhoneNumberConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("SecurityStamp") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("SecurityStamp") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId") |
||||
|
.HasColumnName("TenantId"); |
||||
|
|
||||
|
b.Property<bool>("TwoFactorEnabled") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("TwoFactorEnabled") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("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<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("ClaimType") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ClaimValue") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("UserId"); |
||||
|
|
||||
|
b.ToTable("AbpUserClaims"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserLogin", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<string>("LoginProvider") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderDisplayName") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(196); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("UserId", "LoginProvider"); |
||||
|
|
||||
|
b.HasIndex("LoginProvider", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpUserLogins"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserRole", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<Guid>("RoleId"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("UserId", "RoleId"); |
||||
|
|
||||
|
b.HasIndex("RoleId", "UserId"); |
||||
|
|
||||
|
b.ToTable("AbpUserRoles"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserToken", b => |
||||
|
{ |
||||
|
b.Property<Guid>("UserId"); |
||||
|
|
||||
|
b.Property<string>("LoginProvider") |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("Name"); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.Property<string>("Value"); |
||||
|
|
||||
|
b.HasKey("UserId", "LoginProvider", "Name"); |
||||
|
|
||||
|
b.ToTable("AbpUserTokens"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.PermissionManagement.PermissionGrant", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("Name", "ProviderName", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpPermissionGrants"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Abp.SettingManagement.Setting", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ProviderKey") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("ProviderName") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<string>("Value") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(2048); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("Name", "ProviderName", "ProviderKey"); |
||||
|
|
||||
|
b.ToTable("AbpSettings"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Blogs.Blog", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<string>("Description") |
||||
|
.HasColumnName("Description") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Name") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("ShortName") |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgBlogs"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Comments.Comment", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<Guid>("PostId") |
||||
|
.HasColumnName("PostId"); |
||||
|
|
||||
|
b.Property<Guid?>("RepliedCommentId") |
||||
|
.HasColumnName("RepliedCommentId"); |
||||
|
|
||||
|
b.Property<string>("Text") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Text") |
||||
|
.HasMaxLength(1024); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("PostId"); |
||||
|
|
||||
|
b.HasIndex("RepliedCommentId"); |
||||
|
|
||||
|
b.ToTable("BlgComments"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.Post", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<Guid>("BlogId") |
||||
|
.HasColumnName("BlogId"); |
||||
|
|
||||
|
b.Property<string>("Content") |
||||
|
.HasColumnName("Content") |
||||
|
.HasMaxLength(1048576); |
||||
|
|
||||
|
b.Property<string>("CoverImage") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("CoverImage"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<int>("ReadCount"); |
||||
|
|
||||
|
b.Property<string>("Title") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Title") |
||||
|
.HasMaxLength(512); |
||||
|
|
||||
|
b.Property<string>("Url") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Url") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.HasIndex("BlogId"); |
||||
|
|
||||
|
b.ToTable("BlgPosts"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.PostTag", b => |
||||
|
{ |
||||
|
b.Property<Guid>("PostId") |
||||
|
.HasColumnName("PostId"); |
||||
|
|
||||
|
b.Property<Guid>("TagId") |
||||
|
.HasColumnName("TagId"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId"); |
||||
|
|
||||
|
b.HasKey("PostId", "TagId"); |
||||
|
|
||||
|
b.HasIndex("TagId"); |
||||
|
|
||||
|
b.ToTable("BlgPostTags"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Tagging.Tag", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime") |
||||
|
.HasColumnName("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId") |
||||
|
.HasColumnName("CreatorId"); |
||||
|
|
||||
|
b.Property<Guid?>("DeleterId") |
||||
|
.HasColumnName("DeleterId"); |
||||
|
|
||||
|
b.Property<DateTime?>("DeletionTime") |
||||
|
.HasColumnName("DeletionTime"); |
||||
|
|
||||
|
b.Property<string>("Description") |
||||
|
.HasColumnName("Description") |
||||
|
.HasMaxLength(512); |
||||
|
|
||||
|
b.Property<bool>("IsDeleted") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("IsDeleted") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<DateTime?>("LastModificationTime") |
||||
|
.HasColumnName("LastModificationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("LastModifierId") |
||||
|
.HasColumnName("LastModifierId"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("Name") |
||||
|
.HasMaxLength(64); |
||||
|
|
||||
|
b.Property<int>("UsageCount") |
||||
|
.HasColumnName("UsageCount"); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgTags"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Users.BlogUser", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("Email") |
||||
|
.HasColumnName("Email") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.Property<bool>("EmailConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("EmailConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<string>("PhoneNumber") |
||||
|
.HasColumnName("PhoneNumber") |
||||
|
.HasMaxLength(16); |
||||
|
|
||||
|
b.Property<bool>("PhoneNumberConfirmed") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasColumnName("PhoneNumberConfirmed") |
||||
|
.HasDefaultValue(false); |
||||
|
|
||||
|
b.Property<Guid?>("TenantId") |
||||
|
.HasColumnName("TenantId"); |
||||
|
|
||||
|
b.Property<string>("UserName") |
||||
|
.IsRequired() |
||||
|
.HasColumnName("UserName") |
||||
|
.HasMaxLength(256); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("BlgUsers"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Docs.Projects.Project", b => |
||||
|
{ |
||||
|
b.Property<Guid>("Id") |
||||
|
.ValueGeneratedOnAdd(); |
||||
|
|
||||
|
b.Property<string>("DefaultDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("DocumentStoreType"); |
||||
|
|
||||
|
b.Property<string>("ExtraProperties") |
||||
|
.HasColumnName("ExtraProperties"); |
||||
|
|
||||
|
b.Property<string>("Format"); |
||||
|
|
||||
|
b.Property<string>("GoogleCustomSearchId"); |
||||
|
|
||||
|
b.Property<string>("MainWebsiteUrl"); |
||||
|
|
||||
|
b.Property<string>("Name") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("NavigationDocumentName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("ShortName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(32); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("DocsProjects"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Utils.SolutionTemplating.DownloadInfo", b => |
||||
|
{ |
||||
|
b.Property<int>("Id") |
||||
|
.ValueGeneratedOnAdd() |
||||
|
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); |
||||
|
|
||||
|
b.Property<int>("CreationDuration"); |
||||
|
|
||||
|
b.Property<DateTime>("CreationTime"); |
||||
|
|
||||
|
b.Property<Guid?>("CreatorId"); |
||||
|
|
||||
|
b.Property<byte>("DatabaseProvider"); |
||||
|
|
||||
|
b.Property<string>("ProjectName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(128); |
||||
|
|
||||
|
b.Property<string>("TemplateName") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(42); |
||||
|
|
||||
|
b.Property<string>("Version") |
||||
|
.IsRequired() |
||||
|
.HasMaxLength(20); |
||||
|
|
||||
|
b.HasKey("Id"); |
||||
|
|
||||
|
b.ToTable("Downloads"); |
||||
|
}); |
||||
|
|
||||
|
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); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Comments.Comment", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Posts.Post") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("PostId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
|
||||
|
b.HasOne("Volo.Blogging.Comments.Comment") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("RepliedCommentId"); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.Post", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Blogs.Blog") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("BlogId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
}); |
||||
|
|
||||
|
modelBuilder.Entity("Volo.Blogging.Posts.PostTag", b => |
||||
|
{ |
||||
|
b.HasOne("Volo.Blogging.Posts.Post") |
||||
|
.WithMany("Tags") |
||||
|
.HasForeignKey("PostId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
|
||||
|
b.HasOne("Volo.Blogging.Tagging.Tag") |
||||
|
.WithMany() |
||||
|
.HasForeignKey("TagId") |
||||
|
.OnDelete(DeleteBehavior.Cascade); |
||||
|
}); |
||||
|
#pragma warning restore 612, 618
|
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,22 @@ |
|||||
|
<Project Sdk="Microsoft.NET.Sdk"> |
||||
|
|
||||
|
<PropertyGroup> |
||||
|
<TargetFramework>netcoreapp2.1</TargetFramework> |
||||
|
<RootNamespace /> |
||||
|
</PropertyGroup> |
||||
|
|
||||
|
<ItemGroup> |
||||
|
<PackageReference Include="Microsoft.AspNetCore.All" Version="2.1.1" /> |
||||
|
</ItemGroup> |
||||
|
|
||||
|
<ItemGroup> |
||||
|
<ProjectReference Include="..\Volo.AbpWebSite.Domain\Volo.AbpWebSite.Domain.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\..\abp\framework\src\Volo.Abp.EntityFrameworkCore.SqlServer\Volo.Abp.EntityFrameworkCore.SqlServer.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\..\abp\modules\identity\src\Volo.Abp.Identity.EntityFrameworkCore\Volo.Abp.Identity.EntityFrameworkCore.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\..\abp\modules\permission-management\src\Volo.Abp.PermissionManagement.EntityFrameworkCore\Volo.Abp.PermissionManagement.EntityFrameworkCore.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\..\abp\modules\setting-management\src\Volo.Abp.SettingManagement.EntityFrameworkCore\Volo.Abp.SettingManagement.EntityFrameworkCore.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\..\abp\modules\docs\src\Volo.Docs.EntityFrameworkCore\Volo.Docs.EntityFrameworkCore.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\..\abp\modules\blogging\src\Volo.Blogging.EntityFrameworkCore\Volo.Blogging.EntityFrameworkCore.csproj" /> |
||||
|
</ItemGroup> |
||||
|
|
||||
|
</Project> |
||||
@ -0,0 +1,32 @@ |
|||||
|
using Microsoft.Extensions.DependencyInjection; |
||||
|
using Volo.Abp.EntityFrameworkCore.SqlServer; |
||||
|
using Volo.Abp.Identity.EntityFrameworkCore; |
||||
|
using Volo.Abp.Modularity; |
||||
|
using Volo.Abp.PermissionManagement.EntityFrameworkCore; |
||||
|
using Volo.Abp.SettingManagement.EntityFrameworkCore; |
||||
|
using Volo.AbpWebSite.EntityFrameworkCore; |
||||
|
using Volo.Blogging.EntityFrameworkCore; |
||||
|
using Volo.Docs.EntityFrameworkCore; |
||||
|
|
||||
|
namespace Volo.AbpWebSite |
||||
|
{ |
||||
|
[DependsOn( |
||||
|
typeof(AbpWebSiteDomainModule), |
||||
|
typeof(AbpEntityFrameworkCoreSqlServerModule), |
||||
|
typeof(AbpSettingManagementEntityFrameworkCoreModule), |
||||
|
typeof(AbpPermissionManagementEntityFrameworkCoreModule), |
||||
|
typeof(AbpIdentityEntityFrameworkCoreModule), |
||||
|
typeof(DocsEntityFrameworkCoreModule), |
||||
|
typeof(BloggingEntityFrameworkCoreModule) |
||||
|
)] |
||||
|
public class AbpWebSiteEntityFrameworkCoreModule : AbpModule |
||||
|
{ |
||||
|
public override void ConfigureServices(ServiceConfigurationContext context) |
||||
|
{ |
||||
|
context.Services.AddAbpDbContext<AbpWebSiteDbContext>(options => |
||||
|
{ |
||||
|
options.AddDefaultRepositories(); |
||||
|
}); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,33 @@ |
|||||
|
using Microsoft.EntityFrameworkCore; |
||||
|
using Volo.Abp.EntityFrameworkCore; |
||||
|
using Volo.Abp.Identity.EntityFrameworkCore; |
||||
|
using Volo.Abp.PermissionManagement.EntityFrameworkCore; |
||||
|
using Volo.Abp.SettingManagement.EntityFrameworkCore; |
||||
|
using Volo.Blogging.EntityFrameworkCore; |
||||
|
using Volo.Docs.EntityFrameworkCore; |
||||
|
using Volo.Utils.SolutionTemplating; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore |
||||
|
{ |
||||
|
public class AbpWebSiteDbContext : AbpDbContext<AbpWebSiteDbContext> |
||||
|
{ |
||||
|
public DbSet<DownloadInfo> Downloads { get; set; } |
||||
|
|
||||
|
public AbpWebSiteDbContext(DbContextOptions<AbpWebSiteDbContext> options) |
||||
|
: base(options) |
||||
|
{ |
||||
|
|
||||
|
} |
||||
|
|
||||
|
protected override void OnModelCreating(ModelBuilder modelBuilder) |
||||
|
{ |
||||
|
base.OnModelCreating(modelBuilder); |
||||
|
|
||||
|
modelBuilder.ConfigurePermissionManagement(); |
||||
|
modelBuilder.ConfigureSettingManagement(); |
||||
|
modelBuilder.ConfigureIdentity(); |
||||
|
modelBuilder.ConfigureDocs(); |
||||
|
modelBuilder.ConfigureBlogging(); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,29 @@ |
|||||
|
using System.IO; |
||||
|
using Microsoft.EntityFrameworkCore; |
||||
|
using Microsoft.EntityFrameworkCore.Design; |
||||
|
using Microsoft.Extensions.Configuration; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.EntityFrameworkCore |
||||
|
{ |
||||
|
public class AbpWebSiteDbContextFactory : IDesignTimeDbContextFactory<AbpWebSiteDbContext> |
||||
|
{ |
||||
|
public AbpWebSiteDbContext CreateDbContext(string[] args) |
||||
|
{ |
||||
|
var configuration = BuildConfiguration(); |
||||
|
|
||||
|
var builder = new DbContextOptionsBuilder<AbpWebSiteDbContext>() |
||||
|
.UseSqlServer(configuration.GetConnectionString("Default")); |
||||
|
|
||||
|
return new AbpWebSiteDbContext(builder.Options); |
||||
|
} |
||||
|
|
||||
|
private static IConfigurationRoot BuildConfiguration() |
||||
|
{ |
||||
|
var builder = new ConfigurationBuilder() |
||||
|
.SetBasePath(Path.Combine(Directory.GetCurrentDirectory(), "../Volo.AbpWebSite.Web/")) |
||||
|
.AddJsonFile("appsettings.json", optional: false); |
||||
|
|
||||
|
return builder.Build(); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,46 @@ |
|||||
|
{ |
||||
|
// Use IntelliSense to find out which attributes exist for C# debugging |
||||
|
// Use hover for the description of the existing attributes |
||||
|
// For further information visit https://github.com/OmniSharp/omnisharp-vscode/blob/master/debugger-launchjson.md |
||||
|
"version": "0.2.0", |
||||
|
"configurations": [ |
||||
|
{ |
||||
|
"name": ".NET Core Launch (web)", |
||||
|
"type": "coreclr", |
||||
|
"request": "launch", |
||||
|
"preLaunchTask": "build", |
||||
|
// If you have changed target frameworks, make sure to update the program path. |
||||
|
"program": "${workspaceFolder}/bin/Debug/netcoreapp2.1/Volo.AbpWebSite.Web.dll", |
||||
|
"args": [], |
||||
|
"cwd": "${workspaceFolder}", |
||||
|
"stopAtEntry": false, |
||||
|
"internalConsoleOptions": "openOnSessionStart", |
||||
|
"launchBrowser": { |
||||
|
"enabled": true, |
||||
|
"args": "${auto-detect-url}", |
||||
|
"windows": { |
||||
|
"command": "cmd.exe", |
||||
|
"args": "/C start ${auto-detect-url}" |
||||
|
}, |
||||
|
"osx": { |
||||
|
"command": "open" |
||||
|
}, |
||||
|
"linux": { |
||||
|
"command": "xdg-open" |
||||
|
} |
||||
|
}, |
||||
|
"env": { |
||||
|
"ASPNETCORE_ENVIRONMENT": "Development" |
||||
|
}, |
||||
|
"sourceFileMap": { |
||||
|
"/Views": "${workspaceFolder}/Views" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"name": ".NET Core Attach", |
||||
|
"type": "coreclr", |
||||
|
"request": "attach", |
||||
|
"processId": "${command:pickProcess}" |
||||
|
} |
||||
|
,] |
||||
|
} |
||||
@ -0,0 +1,15 @@ |
|||||
|
{ |
||||
|
"version": "2.0.0", |
||||
|
"tasks": [ |
||||
|
{ |
||||
|
"label": "build", |
||||
|
"command": "dotnet", |
||||
|
"type": "process", |
||||
|
"args": [ |
||||
|
"build", |
||||
|
"${workspaceFolder}/Volo.AbpWebSite.Web.csproj" |
||||
|
], |
||||
|
"problemMatcher": "$msCompile" |
||||
|
} |
||||
|
] |
||||
|
} |
||||
@ -0,0 +1 @@ |
|||||
|
This is needed for let's encrypt! |
||||
@ -0,0 +1,22 @@ |
|||||
|
using Volo.Abp.AspNetCore.Mvc.UI.Theming; |
||||
|
using Volo.Abp.DependencyInjection; |
||||
|
|
||||
|
namespace Volo.AbpWebSite |
||||
|
{ |
||||
|
[ThemeName(Name)] |
||||
|
public class AbpIoTheme : ITheme, ITransientDependency |
||||
|
{ |
||||
|
public const string Name = "AbpIo"; |
||||
|
|
||||
|
public string GetLayout(string name, bool fallbackToDefault = true) |
||||
|
{ |
||||
|
switch (name) |
||||
|
{ |
||||
|
case StandardLayouts.Empty: |
||||
|
return "~/Pages/Shared/LayoutEmpty.cshtml"; |
||||
|
default: |
||||
|
return fallbackToDefault ? "~/Pages/Shared/Layout.cshtml" : null; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,9 @@ |
|||||
|
using Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.Components; |
||||
|
|
||||
|
namespace Volo.AbpWebSite |
||||
|
{ |
||||
|
public class AbpWebSiteBrandingProvider : DefaultBrandingProvider |
||||
|
{ |
||||
|
public override string AppName => "abp.io"; |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,193 @@ |
|||||
|
using System.Globalization; |
||||
|
using System.IO; |
||||
|
using System.Linq; |
||||
|
using Microsoft.AspNetCore.Builder; |
||||
|
using Microsoft.AspNetCore.Hosting; |
||||
|
using Microsoft.AspNetCore.Http; |
||||
|
using Microsoft.AspNetCore.Localization; |
||||
|
using Microsoft.Extensions.Configuration; |
||||
|
using Microsoft.Extensions.DependencyInjection; |
||||
|
using Microsoft.Extensions.FileProviders; |
||||
|
using Volo.Abp; |
||||
|
using Volo.Abp.Account.Web; |
||||
|
using Volo.Abp.AspNetCore.Modularity; |
||||
|
using Volo.Abp.AspNetCore.Mvc.UI; |
||||
|
using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap; |
||||
|
using Volo.Abp.AspNetCore.Mvc.UI.Bundling; |
||||
|
using Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared; |
||||
|
using Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.Bundling; |
||||
|
using Volo.Abp.AspNetCore.Mvc.UI.Theming; |
||||
|
using Volo.Abp.Autofac; |
||||
|
using Volo.Abp.Data; |
||||
|
using Volo.Abp.EntityFrameworkCore; |
||||
|
using Volo.Abp.Identity; |
||||
|
using Volo.Abp.Identity.Web; |
||||
|
using Volo.Abp.Localization; |
||||
|
using Volo.Abp.Modularity; |
||||
|
using Volo.Abp.Threading; |
||||
|
using Volo.Abp.UI; |
||||
|
using Volo.Abp.UI.Navigation; |
||||
|
using Volo.Abp.VirtualFileSystem; |
||||
|
using Volo.AbpWebSite.Bundling; |
||||
|
using Volo.Blogging; |
||||
|
using Volo.Docs; |
||||
|
|
||||
|
namespace Volo.AbpWebSite |
||||
|
{ |
||||
|
[DependsOn( |
||||
|
typeof(AbpWebSiteApplicationModule), |
||||
|
typeof(AbpWebSiteEntityFrameworkCoreModule), |
||||
|
typeof(AbpAutofacModule), |
||||
|
typeof(AbpAspNetCoreMvcUiThemeSharedModule), |
||||
|
typeof(DocsApplicationModule), |
||||
|
typeof(DocsWebModule), |
||||
|
typeof(AbpAccountWebModule), |
||||
|
typeof(AbpIdentityApplicationModule), |
||||
|
typeof(AbpIdentityWebModule), |
||||
|
typeof(BloggingApplicationModule), |
||||
|
typeof(BloggingWebModule) |
||||
|
)] |
||||
|
public class AbpWebSiteWebModule : AbpModule |
||||
|
{ |
||||
|
public override void PreConfigureServices(ServiceConfigurationContext context) |
||||
|
{ |
||||
|
context.Services.PreConfigure<AbpAspNetCoreConfigurationOptions>(options => |
||||
|
{ |
||||
|
options.UserSecretsAssembly = typeof(AbpWebSiteWebModule).Assembly; |
||||
|
}); |
||||
|
} |
||||
|
|
||||
|
public override void ConfigureServices(ServiceConfigurationContext context) |
||||
|
{ |
||||
|
var hostingEnvironment = context.Services.GetHostingEnvironment(); |
||||
|
var configuration = context.Services.GetConfiguration(); |
||||
|
|
||||
|
ConfigureDatabaseServices(context.Services, configuration); |
||||
|
ConfigureVirtualFileSystem(context.Services, hostingEnvironment); |
||||
|
ConfigureBundles(context.Services); |
||||
|
ConfigureTheme(context.Services); |
||||
|
} |
||||
|
|
||||
|
private static void ConfigureBundles(IServiceCollection services) |
||||
|
{ |
||||
|
services.Configure<BundlingOptions>(options => |
||||
|
{ |
||||
|
options |
||||
|
.StyleBundles |
||||
|
.Add(AbpIoBundles.Styles.Global, bundle => |
||||
|
{ |
||||
|
bundle. |
||||
|
AddBaseBundles(StandardBundles.Styles.Global) |
||||
|
.AddFiles( |
||||
|
"/scss/vs.css", |
||||
|
"/js/prism/prism.css" |
||||
|
); |
||||
|
}); |
||||
|
|
||||
|
options |
||||
|
.ScriptBundles |
||||
|
.Add(AbpIoBundles.Scripts.Global, bundle => |
||||
|
{ |
||||
|
bundle.AddBaseBundles(StandardBundles.Scripts.Global); |
||||
|
}); |
||||
|
}); |
||||
|
} |
||||
|
|
||||
|
private static void ConfigureDatabaseServices(IServiceCollection services, IConfigurationRoot configuration) |
||||
|
{ |
||||
|
services.Configure<DbConnectionOptions>(options => |
||||
|
{ |
||||
|
options.ConnectionStrings.Default = configuration.GetConnectionString("Default"); |
||||
|
}); |
||||
|
|
||||
|
services.Configure<AbpDbContextOptions>(options => |
||||
|
{ |
||||
|
options.UseSqlServer(); |
||||
|
}); |
||||
|
} |
||||
|
|
||||
|
private static void ConfigureVirtualFileSystem(IServiceCollection services, IHostingEnvironment hostingEnvironment) |
||||
|
{ |
||||
|
if (hostingEnvironment.IsDevelopment()) |
||||
|
{ |
||||
|
services.Configure<VirtualFileSystemOptions>(options => |
||||
|
{ |
||||
|
options.FileSets.ReplaceEmbeddedByPyhsical<AbpUiModule>(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}..{0}..{0}..{0}abp{0}framework{0}src{0}Volo.Abp.UI", Path.DirectorySeparatorChar))); |
||||
|
options.FileSets.ReplaceEmbeddedByPyhsical<AbpAspNetCoreMvcUiModule>(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}..{0}..{0}..{0}abp{0}framework{0}src{0}Volo.Abp.AspNetCore.Mvc.UI", Path.DirectorySeparatorChar))); |
||||
|
options.FileSets.ReplaceEmbeddedByPyhsical<AbpAspNetCoreMvcUiBootstrapModule>(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}..{0}..{0}..{0}abp{0}framework{0}src{0}Volo.Abp.AspNetCore.Mvc.UI.Bootstrap", Path.DirectorySeparatorChar))); |
||||
|
options.FileSets.ReplaceEmbeddedByPyhsical<AbpAspNetCoreMvcUiThemeSharedModule>(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}..{0}..{0}..{0}abp{0}framework{0}src{0}Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared", Path.DirectorySeparatorChar))); |
||||
|
options.FileSets.ReplaceEmbeddedByPyhsical<DocsDomainModule>(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}..{0}..{0}..{0}abp{0}modules{0}docs{0}src{0}Volo.Docs.Domain", Path.DirectorySeparatorChar))); |
||||
|
options.FileSets.ReplaceEmbeddedByPyhsical<DocsWebModule>(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}..{0}..{0}..{0}abp{0}modules{0}docs{0}src{0}Volo.Docs.Web", Path.DirectorySeparatorChar))); |
||||
|
options.FileSets.ReplaceEmbeddedByPyhsical<BloggingWebModule>(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}..{0}..{0}..{0}abp{0}modules{0}blogging{0}src{0}Volo.Blogging.Web", Path.DirectorySeparatorChar))); |
||||
|
options.FileSets.ReplaceEmbeddedByPyhsical<AbpAccountWebModule>(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}..{0}..{0}..{0}abp{0}modules{0}account{0}src{0}Volo.Abp.Account.Web", Path.DirectorySeparatorChar))); |
||||
|
}); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
private void ConfigureTheme(IServiceCollection services) |
||||
|
{ |
||||
|
services.Configure<ThemingOptions>(options => |
||||
|
{ |
||||
|
options.Themes.Add<AbpIoTheme>(); |
||||
|
options.DefaultThemeName = AbpIoTheme.Name; |
||||
|
}); |
||||
|
} |
||||
|
|
||||
|
public override void OnApplicationInitialization(ApplicationInitializationContext context) |
||||
|
{ |
||||
|
var app = context.GetApplicationBuilder(); |
||||
|
var env = context.GetEnvironment(); |
||||
|
|
||||
|
app.UseRequestLocalization(options => |
||||
|
{ |
||||
|
options.DefaultRequestCulture = new RequestCulture("en-US", "en-US"); |
||||
|
options.AddSupportedCultures("en-US"); |
||||
|
options.AddSupportedUICultures("en-US"); |
||||
|
}); |
||||
|
|
||||
|
if (env.IsDevelopment()) |
||||
|
{ |
||||
|
app.UseDeveloperExceptionPage(); |
||||
|
} |
||||
|
else |
||||
|
{ |
||||
|
app.UseErrorPage(); |
||||
|
} |
||||
|
|
||||
|
//Necessary for LetsEncrypt
|
||||
|
app.UseStaticFiles(new StaticFileOptions |
||||
|
{ |
||||
|
FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), @".well-known")), |
||||
|
RequestPath = new PathString("/.well-known"), |
||||
|
ServeUnknownFileTypes = true // serve extensionless file
|
||||
|
}); |
||||
|
|
||||
|
app.UseVirtualFiles(); |
||||
|
|
||||
|
app.UseAuthentication(); |
||||
|
|
||||
|
//TODO: Create an extension method!
|
||||
|
app.UseMvc(routes => |
||||
|
{ |
||||
|
routes.MapRoute( |
||||
|
name: "defaultWithArea", |
||||
|
template: "{area}/{controller=Home}/{action=Index}/{id?}"); |
||||
|
|
||||
|
routes.MapRoute( |
||||
|
name: "default", |
||||
|
template: "{controller=Home}/{action=Index}/{id?}"); |
||||
|
}); |
||||
|
|
||||
|
AsyncHelper.RunSync(async () => |
||||
|
{ |
||||
|
await context.ServiceProvider |
||||
|
.GetRequiredService<IIdentityDataSeeder>() |
||||
|
.SeedAsync( |
||||
|
"1q2w3E*", |
||||
|
IdentityPermissions.GetAll() |
||||
|
.Union(BloggingPermissions.GetAll()) |
||||
|
); |
||||
|
}); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,15 @@ |
|||||
|
namespace Volo.AbpWebSite.Bundling |
||||
|
{ |
||||
|
public static class AbpIoBundles |
||||
|
{ |
||||
|
public static class Styles |
||||
|
{ |
||||
|
public const string Global = "AbpIo.Global"; |
||||
|
} |
||||
|
|
||||
|
public static class Scripts |
||||
|
{ |
||||
|
public const string Global = "AbpIo.Global"; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,17 @@ |
|||||
|
namespace Volo.AbpWebSite |
||||
|
{ |
||||
|
public static class DebugHelper |
||||
|
{ |
||||
|
public static bool IsDebug |
||||
|
{ |
||||
|
get |
||||
|
{ |
||||
|
#if DEBUG
|
||||
|
return true; |
||||
|
#else
|
||||
|
return false; |
||||
|
#endif
|
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
File diff suppressed because it is too large
@ -0,0 +1,369 @@ |
|||||
|
@page |
||||
|
@using Volo.AbpWebSite |
||||
|
@model Volo.AbpWebSite.Pages.IndexModel |
||||
|
@{ |
||||
|
Layout = "~/Pages/Shared/HomePageLayout.cshtml"; |
||||
|
ViewBag.FluidLayout = false; |
||||
|
} |
||||
|
|
||||
|
<div class="jumbotron text-center text-light"> |
||||
|
<div class="row align-items-center"> |
||||
|
<div class="col"> |
||||
|
|
||||
|
<div class="container"> |
||||
|
<h1 class="display-1"> |
||||
|
<span class="position-relative jlogo-wrapper"> |
||||
|
<img src="assets/abp-logo-light.svg" class="jumbotron-logo"> <span class="abp-version">PREVIEW</span> |
||||
|
</span> |
||||
|
</h1> |
||||
|
<h2 class="display-6"><span class="text-underline text-success">open source</span> web application framework</h2> |
||||
|
<p><span class="desc-span">for asp.net core</span></p> |
||||
|
<hr class="my-4"> |
||||
|
<p> |
||||
|
<a class="btn btn-outline-light btn-md" href="/documents" role="button"> |
||||
|
Learn how to use |
||||
|
</a> |
||||
|
|
||||
|
<a class="btn btn-success btn-md" href="/Templates" role="button"> |
||||
|
Create a new project |
||||
|
<i class="fa fa-long-arrow-right"></i> |
||||
|
</a> |
||||
|
</p> |
||||
|
<p> |
||||
|
See the <a class="btn-link text-success" href="https://github.com/volosoft/abp/releases"> |
||||
|
latest release logs |
||||
|
</a> |
||||
|
</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class="position-relative overflow-hidden text-center bg-white p-responsive"> |
||||
|
<div class="container"> |
||||
|
<div class="col-md-8 mx-auto m-0"> |
||||
|
<img class="section-icon mb-5" src="img/modular.png" /> |
||||
|
<h2 class="text-primary">Complete Application Development Infrastructure</h2> |
||||
|
<p class="font-weight-normal">ABP provides a full stack development model and infrastructure for modern web applications.</p> |
||||
|
</div> |
||||
|
<div class="row pb-5"> |
||||
|
<div class="col-md-4"> |
||||
|
<div class="p-4"> |
||||
|
<img class="subsection-icon mb-3" src="assets/icons/1-modular.png" /> |
||||
|
<h3 class="text-primary display-6">Modular Architecture</h3> |
||||
|
<p class="font-weight-normal">Designed as modular and extensible from the bottom to the top.</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-4"> |
||||
|
<div class="p-4"> |
||||
|
<img class="subsection-icon mb-3" src="assets/icons/2-micro.png" /> |
||||
|
<h3 class="text-primary display-6">Microservice Focused</h3> |
||||
|
<p class="font-weight-normal">Designed to support microservice architecture and helps to build autonomous microservices.</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-4"> |
||||
|
<div class="p-4"> |
||||
|
<img class="subsection-icon mb-3" src="assets/icons/3-ddd.png" /> |
||||
|
<h3 class="text-primary display-6">Domain Driven Design</h3> |
||||
|
<p class="font-weight-normal">Designed and developed based on DDD patterns and principles. Provides a layered model for your application.</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="row pb-5"> |
||||
|
<div class="col-md-4"> |
||||
|
<div class="p-4"> |
||||
|
<img class="subsection-icon mb-3" src="assets/icons/4-autho.png" /> |
||||
|
<h3 class="text-primary display-6">Authorization</h3> |
||||
|
<p class="font-weight-normal">Advanced authorization with user, role and fine-grained permission system. Built on the Microsoft Identity library.</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-4"> |
||||
|
<div class="p-4"> |
||||
|
<img class="subsection-icon mb-3" src="assets/icons/5-multi-tenancy.png" /> |
||||
|
<h3 class="text-primary display-6">Multi-Tenancy</h3> |
||||
|
<p class="font-weight-normal">SaaS applications made easy! Integrated multi-tenancy from database to UI.</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-4"> |
||||
|
<div class="p-4"> |
||||
|
<img class="subsection-icon mb-3" src="assets/icons/cross.png" /> |
||||
|
<h3 class="text-primary display-6">Cross Cutting Concerns</h3> |
||||
|
<p class="font-weight-normal">Complete infrastructure for authorization, validation, exception handling, caching, audit logging, transaction management and so on.</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="toggle-row"> |
||||
|
<div class="row pb-5"> |
||||
|
<div class="col-md-4"> |
||||
|
<div class="p-4"> |
||||
|
<img class="subsection-icon mb-3" src="assets/icons/bundle.png" /> |
||||
|
<h3 class="text-primary display-6">Built-In Bundling & Minification</h3> |
||||
|
<p class="font-weight-normal">Stop to use external tools for bundling & minification. ABP offers a simpler, dynamic, powerful, modular and built-in way!</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-4"> |
||||
|
<div class="p-4"> |
||||
|
<img class="subsection-icon mb-3" src="assets/icons/virtualfile.png" /> |
||||
|
<h3 class="text-primary display-6">Virtual File System</h3> |
||||
|
<p class="font-weight-normal">Embed views, scripts, styles, images... into packages/libraries and reuse in different applications.</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-4"> |
||||
|
<div class="p-4"> |
||||
|
<img class="subsection-icon mb-3" src="assets/icons/theming.png" /> |
||||
|
<h3 class="text-primary display-6">Theming</h3> |
||||
|
<p class="font-weight-normal">Use and customize the bootstrap-based standard UI theme or create your own one.</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class="row pb-5"> |
||||
|
<div class="col-md-4"> |
||||
|
<div class="p-4"> |
||||
|
<img class="subsection-icon mb-3" src="assets/icons/bg-job.png" /> |
||||
|
<h3 class="text-primary display-6">Background Jobs</h3> |
||||
|
<p class="font-weight-normal">Built-in background job system that can be integrated to Hangfire, RabbitMQ or any tool you like.</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-4"> |
||||
|
<div class="p-4"> |
||||
|
<img class="subsection-icon mb-3" src="assets/icons/custom.png" /> |
||||
|
<h3 class="text-primary display-6">Testable & Customizable</h3> |
||||
|
<p class="font-weight-normal">Helps to build testable applications. Easy to replace/override built-in services.</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-4"> |
||||
|
<div class="p-4"> |
||||
|
<img class="subsection-icon mb-3" src="assets/icons/request.png" /> |
||||
|
<h3 class="text-primary display-6"> HTTP APIs & Dynamic Proxies</h3> |
||||
|
<p class="font-weight-normal">Automatically expose application services as REST style HTTP APIs and consume with dynamic JavaScript & C# proxies.</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class="row"> |
||||
|
<div class="col-md-4 mx-auto"> |
||||
|
<div class="p-4"> |
||||
|
<a href="javascript:;" class="btn btn-outline-primary btn-toggle"> |
||||
|
<span class="moreText">See More Features</span> |
||||
|
<span class="lessText">See Less Features</span> |
||||
|
|
||||
|
</a> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class="position-relative overflow-hidden text-center bg-primary text-light p-responsive"> |
||||
|
<div class="container"> |
||||
|
<div class="col-md-10 mx-auto"> |
||||
|
<img class="section-icon mb-5" src="img/multi-tenancy.png" /> |
||||
|
<div class="row"> |
||||
|
<div class="col-md-6 mb-5"> |
||||
|
<img src="img/mt-left.png" /> |
||||
|
</div> |
||||
|
<div class="col-md-6 text-left multi-tenancy"> |
||||
|
<h2 class="text-success mt-3">Multi-Tenancy</h2> |
||||
|
<p class="font-weight-normal"> |
||||
|
ABP framework not only supports to develop multi-tenant applications, but also makes your code mostly unaware of the multi-tenancy. |
||||
|
</p> |
||||
|
<p class="font-weight-normal"> |
||||
|
Can automatically determine the current tenant, isolate data of different tenants from each other. |
||||
|
</p> |
||||
|
<p class="font-weight-normal"> |
||||
|
Supports single database, database per tenant and hybrid approaches. |
||||
|
</p> |
||||
|
<p class="font-weight-normal"> |
||||
|
You focus on your business code and let the framework to handle multi-tenancy on behalf of you. |
||||
|
</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class="position-relative overflow-hidden text-center bg-success text-light p-responsive"> |
||||
|
<div class="container"> |
||||
|
<div class="col-md-7 mx-auto"> |
||||
|
<img class="section-icon mb-5" src="img/bootstrap.png" /> |
||||
|
<h2 class="text-light">Bootstrap Tag Helpers</h2> |
||||
|
<p class="font-weight-normal text-light"> |
||||
|
Instead of manually writing the repeating details of bootstrap components, |
||||
|
use ABP's tag helpers to simplify it and take advantage of intellisense. |
||||
|
</p> |
||||
|
</div> |
||||
|
<div class="row justify-content-md-center"> |
||||
|
<div class="col-md"> |
||||
|
<div class="code-block"> |
||||
|
<pre class="line-numbers"> |
||||
|
<code class="language-html"> |
||||
|
<abp-card> |
||||
|
<img abp-card-image="Top" src="~/images/my-dog.png" /> |
||||
|
<abp-card-body> |
||||
|
<abp-card-title>Card title</abp-card-title> |
||||
|
<abp-card-text> |
||||
|
<p> |
||||
|
This is a sample card component built by ABP bootstrap |
||||
|
card tag helper. ABP has tag helper wrappers for most of |
||||
|
the bootstrap components. |
||||
|
</p> |
||||
|
</abp-card-text> |
||||
|
<a abp-button="Primary" href="#">Go somewhere &rarr;</a> |
||||
|
</abp-card-body> |
||||
|
</abp-card> |
||||
|
</code> |
||||
|
</pre> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-1"> |
||||
|
<span class="code-arrow"> |
||||
|
<i class="fa fa-long-arrow-right"></i> |
||||
|
</span> |
||||
|
</div> |
||||
|
<div class="col-md text-dark"> |
||||
|
<div class="abp-browser"> |
||||
|
<div class="browser-container"> |
||||
|
<div class="browser-row"> |
||||
|
<div class="browser-column"> |
||||
|
<span class="browser-dot" style="background:#ED594A;"></span> |
||||
|
<span class="browser-dot" style="background:#FDD800;"></span> |
||||
|
<span class="browser-dot" style="background:#5AC05A;"></span> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<div class="browser-content"> |
||||
|
<abp-card> |
||||
|
<img abp-card-image="Top" src="assets/my-image.png" /> |
||||
|
<abp-card-body> |
||||
|
<abp-card-title>Card title</abp-card-title> |
||||
|
<abp-card-text> |
||||
|
<p> |
||||
|
This is a sample card component built by ABP bootstrap card tag helper. |
||||
|
ABP has tag helper wrappers for most of the bootstrap components. |
||||
|
</p> |
||||
|
</abp-card-text> |
||||
|
<a abp-button="Primary" href="#">Go somewhere →</a> |
||||
|
</abp-card-body> |
||||
|
</abp-card> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="position-relative overflow-hidden text-center bg-white p-responsive"> |
||||
|
<div class="container"> |
||||
|
<div class="col-md-7 mx-auto"> |
||||
|
<img class="section-icon mb-5" src="assets/dynamic.png" /> |
||||
|
<h2 class="text-primary">Dynamic Forms</h2> |
||||
|
<p class="font-weight-normal"> |
||||
|
Dynamic form & input tag helpers can create the complete form from a C# class as the model. |
||||
|
</p> |
||||
|
</div> |
||||
|
|
||||
|
<div class="row justify-content-md-center"> |
||||
|
<div class="col-md"> |
||||
|
<div class="code-block"> |
||||
|
<pre class="line-numbers" data-line=""> |
||||
|
<code class="language-xml"> |
||||
|
<abp-dynamic-form abp-model="@@Model.PersonInput" submit-button="true" /> |
||||
|
</code> |
||||
|
</pre> |
||||
|
</div> |
||||
|
<div class="code-block"> |
||||
|
<pre class="line-numbers" data-line=""> |
||||
|
<code class="language-csharp"> |
||||
|
public class PersonModel |
||||
|
{ |
||||
|
[HiddenInput] |
||||
|
public Guid Id { get; set; } |
||||
|
|
||||
|
[Required] |
||||
|
[EmailAddress] |
||||
|
[StringLength(255)] |
||||
|
public string Email { get; set; } |
||||
|
|
||||
|
[Required] |
||||
|
[StringLength(32)] |
||||
|
[DataType(DataType.Password)] |
||||
|
public string Password { get; set; } |
||||
|
|
||||
|
[StringLength(255)] |
||||
|
public string Address { get; set; } |
||||
|
|
||||
|
public Gender Gender { get; set; } |
||||
|
} |
||||
|
</code> |
||||
|
</pre> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="col-md-1"> |
||||
|
<span class="code-arrow"> |
||||
|
<i class="fa fa-long-arrow-right"></i> |
||||
|
</span> |
||||
|
</div> |
||||
|
<div class="col-md"> |
||||
|
<div class="abp-browser"> |
||||
|
<div class="browser-container"> |
||||
|
<div class="browser-row"> |
||||
|
<div class="browser-column"> |
||||
|
<span class="browser-dot" style="background:#ED594A;"></span> |
||||
|
<span class="browser-dot" style="background:#FDD800;"></span> |
||||
|
<span class="browser-dot" style="background:#5AC05A;"></span> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="browser-content"> |
||||
|
<abp-dynamic-form abp-model="@Model.PersonInput" submit-button="true" asp-page="/Index" asp-page-handler="DynamicForm" /> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="position-relative overflow-hidden text-center bg-light p-responsive"> |
||||
|
|
||||
|
<div class="container"> |
||||
|
<div class="col-md-7 mx-auto"> |
||||
|
<img class="section-icon mb-5" src="assets/multiple-db.png" /> |
||||
|
<h2 class="text-primary">Multiple Database Provider Support</h2> |
||||
|
<p class="font-weight-normal"> |
||||
|
The core framework is ORM/database indepdendent and can work with any data source. |
||||
|
Entity Framework Core and MongoDB providers are currently available. |
||||
|
</p> |
||||
|
</div> |
||||
|
<div class="section-with-logos"> |
||||
|
<img src="assets/tools/17.png" /> |
||||
|
<img src="assets/tools/18.png" /> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="position-relative overflow-hidden text-center bg-transparency p-responsive"> |
||||
|
<div class="container"> |
||||
|
<div class="col-md-7 mx-auto"> |
||||
|
<img class="section-icon mb-5" src="assets/familiar.png" /> |
||||
|
<h2 class="text-primary">Familiar Tools</h2> |
||||
|
<p class="font-weight-normal">Built on and integrated to popular tools you already know.</p> |
||||
|
</div> |
||||
|
<div class="section-with-logos"> |
||||
|
<img src="assets/tools/1.png" /> |
||||
|
<img src="assets/tools/2.png" /> |
||||
|
<img src="assets/tools/17.png" /> |
||||
|
<img src="assets/tools/7.png" /> |
||||
|
<img src="assets/tools/6.png" /> |
||||
|
<img src="assets/tools/8.png" /> |
||||
|
<img src="assets/tools/9.png" /> |
||||
|
<img src="assets/tools/10.png" /> |
||||
|
<img src="assets/tools/sass.png" /> |
||||
|
<img src="assets/tools/13.png" /> |
||||
|
<img src="assets/tools/15.png" /> |
||||
|
<img src="assets/tools/16.png" /> |
||||
|
<img src="assets/tools/18.png" /> |
||||
|
<img src="assets/tools/rabbitmq.png" /> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
@ -0,0 +1,54 @@ |
|||||
|
using System; |
||||
|
using System.ComponentModel.DataAnnotations; |
||||
|
using Microsoft.AspNetCore.Mvc; |
||||
|
using Microsoft.AspNetCore.Mvc.RazorPages; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.Pages |
||||
|
{ |
||||
|
public class IndexModel : PageModel |
||||
|
{ |
||||
|
[BindProperty] |
||||
|
public PersonModel PersonInput { get; set; } |
||||
|
|
||||
|
public void OnGet() |
||||
|
{ |
||||
|
PersonInput = new PersonModel |
||||
|
{ |
||||
|
Id = Guid.NewGuid() |
||||
|
}; |
||||
|
} |
||||
|
|
||||
|
public void OnPostDynamicForm() |
||||
|
{ |
||||
|
|
||||
|
} |
||||
|
|
||||
|
public class PersonModel |
||||
|
{ |
||||
|
[HiddenInput] |
||||
|
public Guid Id { get; set; } |
||||
|
|
||||
|
[Required] |
||||
|
[EmailAddress] |
||||
|
[StringLength(255)] |
||||
|
public string Email { get; set; } |
||||
|
|
||||
|
[Required] |
||||
|
[StringLength(32)] |
||||
|
[DataType(DataType.Password)] |
||||
|
public string Password { get; set; } |
||||
|
|
||||
|
[StringLength(255)] |
||||
|
public string Address { get; set; } |
||||
|
|
||||
|
public Gender Gender { get; set; } |
||||
|
} |
||||
|
|
||||
|
public enum Gender |
||||
|
{ |
||||
|
Unspecified, |
||||
|
Male, |
||||
|
Female |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,39 @@ |
|||||
|
<footer class="footer bg-light"> |
||||
|
<div class="position-relative overflow-hidden text-center p-responsive"> |
||||
|
<div class="container"> |
||||
|
<div class="row"> |
||||
|
<div class="col-md-4"> |
||||
|
<h4 class="text-primary">Want to learn?</h4> |
||||
|
<p> |
||||
|
<a href="/documents" class="btn btn-primary">Documents</a> |
||||
|
<a href="/documents/abp/latest/Tutorials/AspNetCore-Mvc/Part-I" class="btn btn-outline-primary">Tutorials</a> |
||||
|
</p> |
||||
|
</div> |
||||
|
|
||||
|
<div class="col-md-4"> |
||||
|
<h4 class="text-primary">Join our community</h4> |
||||
|
<p> |
||||
|
<a href="https://github.com/abpframework/abp" target="_blank" class="btn btn-dark"><i class="fa fa-github"></i> GitHub</a> |
||||
|
<a href="https://stackoverflow.com/questions/tagged/abp" target="_blank" class="btn btn-warning"><i class="fa fa-stack-overflow"></i> Stack Overflow</a> |
||||
|
<a href="https://twitter.com/abpframework" target="_blank" class="btn btn-blue"><i class="fa fa-twitter"></i> Twitter</a> |
||||
|
</p> |
||||
|
</div> |
||||
|
|
||||
|
<div class="col-md-4"> |
||||
|
<h4 class="text-primary">Ready to get started?</h4> |
||||
|
<p> |
||||
|
<a href="/Templates" class="btn btn-success">Create New Project <i class="fa fa-long-arrow-right"></i> </a> |
||||
|
</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<a href="https://github.com/abpframework/abp" target="_blank"><img class="forkme" src="/assets/fork.png" alt="Fork me on GitHub"></a> |
||||
|
<hr> |
||||
|
<div class="container text-center p-4"> |
||||
|
<p> |
||||
|
2013 - @DateTime.Now.Year © <a target="_blank" href="https://volosoft.com/">Volosoft</a>. Open source license with <a target="_blank" href="https://github.com/abpframework/abp/blob/master/LICENSE">LGPLv3.0</a>. |
||||
|
</p> |
||||
|
<img src="~/assets/abp-logo-dark.svg" class="footer-logo mt-4"> |
||||
|
</div> |
||||
|
</div> |
||||
|
</footer> |
||||
@ -0,0 +1,13 @@ |
|||||
|
using Microsoft.AspNetCore.Mvc; |
||||
|
using Volo.Abp.AspNetCore.Mvc; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.Pages.Shared.Components.Footer |
||||
|
{ |
||||
|
public class FooterViewComponent : AbpViewComponent |
||||
|
{ |
||||
|
public IViewComponentResult Invoke() |
||||
|
{ |
||||
|
return View("~/Pages/Shared/Components/Footer/Default.cshtml"); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,53 @@ |
|||||
|
@using Volo.Abp.Users |
||||
|
@inject ICurrentUser CurrentUser |
||||
|
<header class="product-header"> |
||||
|
<nav class="navbar navbar-expand-lg navbar-dark"> |
||||
|
<div class="container"> |
||||
|
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#product-nav" aria-controls="navbarTogglerDemo03" aria-expanded="false" aria-label="Toggle navigation"> |
||||
|
<span class="navbar-toggler-icon"></span> |
||||
|
</button> |
||||
|
<a class="navbar-brand" href="/"><img src="/assets/abp-logo-light.svg" class="home-logo"></a> |
||||
|
|
||||
|
<div class="collapse navbar-collapse" id="product-nav"> |
||||
|
<ul class="navbar-nav mr-auto ml-auto mt-2 mt-lg-0"> |
||||
|
<li class="nav-item active"> |
||||
|
<a class="nav-link" href="/">Home</a> |
||||
|
</li> |
||||
|
<li class="nav-item"> |
||||
|
<a class="nav-link" href="/Templates">Download</a> |
||||
|
</li> |
||||
|
<li class="nav-item"> |
||||
|
<a class="nav-link" href="/documents">Documents</a> |
||||
|
</li> |
||||
|
<li class="nav-item"> |
||||
|
<a class="nav-link" href="/blog/abp/">Blog</a> |
||||
|
</li> |
||||
|
<li class="nav-item"> |
||||
|
<a class="nav-link" href="https://github.com/abpframework/abp/" target="_blank">Github</a> |
||||
|
</li> |
||||
|
<li class="for-mobile"> |
||||
|
<button type="button" class="close close-mmenu" aria-label="Close"> |
||||
|
<span aria-hidden="true">×</span> |
||||
|
</button> |
||||
|
</li> |
||||
|
</ul> |
||||
|
</div> |
||||
|
|
||||
|
<div class="form-inline my-2 my-lg-0"> |
||||
|
@if (CurrentUser.IsAuthenticated) |
||||
|
{ |
||||
|
<a class="btn btn-logout" href="/Account/Logout">Logout (@CurrentUser.UserName)</a> |
||||
|
} |
||||
|
else |
||||
|
{ |
||||
|
<a class="btn btn-login" href="/Account/Logout">Login</a> |
||||
|
} |
||||
|
<a class="btn my-2 my-sm-0 text-success" href="/Templates"> |
||||
|
<span class="for-desktop">Getting Started</span> |
||||
|
<span class="for-mobile">Go</span> |
||||
|
<i class="fa fa-long-arrow-right"></i> |
||||
|
</a> |
||||
|
</div> |
||||
|
</div> |
||||
|
</nav> |
||||
|
</header> |
||||
@ -0,0 +1,13 @@ |
|||||
|
using Microsoft.AspNetCore.Mvc; |
||||
|
using Volo.Abp.AspNetCore.Mvc; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.Pages.Shared.Components.Header |
||||
|
{ |
||||
|
public class HeaderViewComponent : AbpViewComponent |
||||
|
{ |
||||
|
public IViewComponentResult Invoke() |
||||
|
{ |
||||
|
return View("~/Pages/Shared/Components/Header/Default.cshtml"); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,10 @@ |
|||||
|
<meta charset="utf-8"> |
||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
||||
|
<meta http-equiv="X-UA-Compatible" content="ie=edge"> |
||||
|
<meta name="msapplication-TileColor" content="#da532c"> |
||||
|
<meta name="theme-color" content="#ffffff"> |
||||
|
<link rel="apple-touch-icon" sizes="144x144" href="~/assets/favicon.ico/apple-touch-icon.png"> |
||||
|
<link rel="icon" type="image/png" sizes="32x32" href="~/assets/favicon.ico/favicon-32x32.png"> |
||||
|
<link rel="icon" type="image/png" sizes="16x16" href="~/assets/favicon.ico/favicon-16x16.png"> |
||||
|
<link rel="manifest" href="~/assets/favicon.ico/site.webmanifest"> |
||||
|
<link rel="mask-icon" href="~/assets/favicon.ico/safari-pinned-tab.svg" color="#5bbad5"> |
||||
@ -0,0 +1,13 @@ |
|||||
|
using Microsoft.AspNetCore.Mvc; |
||||
|
using Volo.Abp.AspNetCore.Mvc; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.Pages.Shared.Components.StandardMeta |
||||
|
{ |
||||
|
public class StandardMetaViewComponent : AbpViewComponent |
||||
|
{ |
||||
|
public IViewComponentResult Invoke() |
||||
|
{ |
||||
|
return View("~/Pages/Shared/Components/StandardMeta/Default.cshtml"); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,53 @@ |
|||||
|
@using Volo.Abp.AspNetCore.Mvc.AntiForgery |
||||
|
@using Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.Components |
||||
|
@using Volo.AbpWebSite.Bundling |
||||
|
@using Volo.AbpWebSite.Pages.Shared.Components.Footer |
||||
|
@using Volo.AbpWebSite.Pages.Shared.Components.Header |
||||
|
@using Volo.AbpWebSite.Pages.Shared.Components.StandardMeta |
||||
|
@inject IAbpAntiForgeryManager AbpAntiForgeryManager |
||||
|
@inject IBrandingProvider BrandingProvider |
||||
|
@{ |
||||
|
Layout = null; |
||||
|
AbpAntiForgeryManager.SetCookie(); |
||||
|
} |
||||
|
<!DOCTYPE html> |
||||
|
|
||||
|
<html lang="en"> |
||||
|
<head> |
||||
|
<title>@(ViewBag.Title == null ? "abp.io" : ViewBag.Title)</title> |
||||
|
@await Component.InvokeAsync(typeof(StandardMetaViewComponent)) |
||||
|
<abp-style-bundle name="@AbpIoBundles.Styles.Global" /> |
||||
|
@RenderSection("styles", false) |
||||
|
</head> |
||||
|
<body> |
||||
|
|
||||
|
@await Component.InvokeAsync(typeof(HeaderViewComponent)) |
||||
|
|
||||
|
@RenderBody() |
||||
|
|
||||
|
@await Component.InvokeAsync(typeof(FooterViewComponent)) |
||||
|
|
||||
|
<abp-script-bundle name="@AbpIoBundles.Scripts.Global" /> |
||||
|
|
||||
|
<script type="text/javascript" src="~/Abp/ApplicationConfigurationScript"></script> |
||||
|
<script type="text/javascript" src="~/Abp/ServiceProxyScript"></script> |
||||
|
|
||||
|
<abp-script-bundle name="Volo.AbpWebSite.HomePageLayout"> |
||||
|
<abp-script src="/js/prism/prism.js" /> |
||||
|
<abp-script src="/js/vs.js" /> |
||||
|
</abp-script-bundle> |
||||
|
|
||||
|
<!-- Global site tag (gtag.js) - Google Analytics --> |
||||
|
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-49982725-4"></script> |
||||
|
<script> |
||||
|
window.dataLayer = window.dataLayer || []; |
||||
|
function gtag() { dataLayer.push(arguments); } |
||||
|
gtag('js', new Date()); |
||||
|
|
||||
|
gtag('config', 'UA-49982725-4'); |
||||
|
</script> |
||||
|
|
||||
|
@RenderSection("scripts", false) |
||||
|
|
||||
|
</body> |
||||
|
</html> |
||||
@ -0,0 +1,64 @@ |
|||||
|
@using Volo.Abp.AspNetCore.Mvc.AntiForgery |
||||
|
@using Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.Components |
||||
|
@using Volo.AbpWebSite.Bundling |
||||
|
@using Volo.AbpWebSite.Pages.Shared.Components.Footer |
||||
|
@using Volo.AbpWebSite.Pages.Shared.Components.Header |
||||
|
@using Volo.AbpWebSite.Pages.Shared.Components.StandardMeta |
||||
|
@inject IAbpAntiForgeryManager AbpAntiForgeryManager |
||||
|
@inject IBrandingProvider BrandingProvider |
||||
|
@{ |
||||
|
Layout = null; |
||||
|
AbpAntiForgeryManager.SetCookie(); |
||||
|
} |
||||
|
<!DOCTYPE html> |
||||
|
|
||||
|
<html lang="en"> |
||||
|
<head> |
||||
|
<title>@(ViewBag.Title == null ? "abp.io" : ViewBag.Title)</title> |
||||
|
@await Component.InvokeAsync(typeof(StandardMetaViewComponent)) |
||||
|
<abp-style-bundle name="@AbpIoBundles.Styles.Global" /> |
||||
|
@RenderSection("styles", false) |
||||
|
</head> |
||||
|
<body> |
||||
|
|
||||
|
@await Component.InvokeAsync(typeof(HeaderViewComponent)) |
||||
|
|
||||
|
<div class="jumbotron jumbocover text-center text-light"> |
||||
|
<div class="container"> |
||||
|
<h1 class="display-6"> |
||||
|
@ViewBag.PageTitle |
||||
|
</h1> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="container-fluid bg-white p-responsive"> |
||||
|
<div class="container"> |
||||
|
@RenderBody() |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
@await Component.InvokeAsync(typeof(FooterViewComponent)) |
||||
|
|
||||
|
<abp-script-bundle name="@AbpIoBundles.Scripts.Global" /> |
||||
|
|
||||
|
<script type="text/javascript" src="~/Abp/ApplicationConfigurationScript"></script> |
||||
|
<script type="text/javascript" src="~/Abp/ServiceProxyScript"></script> |
||||
|
|
||||
|
<abp-script-bundle name="Volo.AbpWebSite.HomePageLayout"> |
||||
|
<abp-script src="/js/prism/prism.js" /> |
||||
|
<abp-script src="/js/vs.js" /> |
||||
|
</abp-script-bundle> |
||||
|
|
||||
|
<!-- Global site tag (gtag.js) - Google Analytics --> |
||||
|
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-49982725-4"></script> |
||||
|
<script> |
||||
|
window.dataLayer = window.dataLayer || []; |
||||
|
function gtag() { dataLayer.push(arguments); } |
||||
|
gtag('js', new Date()); |
||||
|
|
||||
|
gtag('config', 'UA-49982725-4'); |
||||
|
</script> |
||||
|
|
||||
|
@RenderSection("scripts", false) |
||||
|
|
||||
|
</body> |
||||
|
</html> |
||||
@ -0,0 +1,47 @@ |
|||||
|
@using Volo.Abp.AspNetCore.Mvc.AntiForgery |
||||
|
@using Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.Bundling |
||||
|
@using Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.Components |
||||
|
@using Volo.AbpWebSite.Bundling |
||||
|
@using Volo.AbpWebSite.Pages.Shared.Components.Footer |
||||
|
@using Volo.AbpWebSite.Pages.Shared.Components.Header |
||||
|
@using Volo.AbpWebSite.Pages.Shared.Components.StandardMeta |
||||
|
@inject IAbpAntiForgeryManager AbpAntiForgeryManager |
||||
|
@inject IBrandingProvider BrandingProvider |
||||
|
@{ |
||||
|
Layout = null; |
||||
|
AbpAntiForgeryManager.SetCookie(); |
||||
|
} |
||||
|
<!DOCTYPE html> |
||||
|
|
||||
|
<html lang="en"> |
||||
|
<head> |
||||
|
<title>@(ViewBag.Title == null ? "abp.io" : ViewBag.Title)</title> |
||||
|
@await Component.InvokeAsync(typeof(StandardMetaViewComponent)) |
||||
|
<abp-style-bundle name="@StandardBundles.Styles.Global" /> |
||||
|
@RenderSection("styles", false) |
||||
|
</head> |
||||
|
<body class="abp-empty-layout"> |
||||
|
|
||||
|
<div class="container-fluid"> |
||||
|
@RenderBody() |
||||
|
</div> |
||||
|
|
||||
|
<abp-script-bundle name="@StandardBundles.Scripts.Global" /> |
||||
|
|
||||
|
<script type="text/javascript" src="~/Abp/ApplicationConfigurationScript"></script> |
||||
|
<script type="text/javascript" src="~/Abp/ServiceProxyScript"></script> |
||||
|
|
||||
|
<!-- Global site tag (gtag.js) - Google Analytics --> |
||||
|
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-49982725-4"></script> |
||||
|
<script> |
||||
|
window.dataLayer = window.dataLayer || []; |
||||
|
function gtag() { dataLayer.push(arguments); } |
||||
|
gtag('js', new Date()); |
||||
|
|
||||
|
gtag('config', 'UA-49982725-4'); |
||||
|
</script> |
||||
|
|
||||
|
@RenderSection("scripts", false) |
||||
|
|
||||
|
</body> |
||||
|
</html> |
||||
@ -0,0 +1,79 @@ |
|||||
|
@page |
||||
|
@using Volo.AbpWebSite |
||||
|
@model Volo.AbpWebSite.Pages.TemplatesModel |
||||
|
@{ |
||||
|
ViewBag.PageTitle = "Get Started"; |
||||
|
} |
||||
|
@section scripts { |
||||
|
<abp-script src="/Pages/templates.js" /> |
||||
|
} |
||||
|
<div class="row"> |
||||
|
<div class="col-md-8 mx-auto"> |
||||
|
|
||||
|
@using (Html.BeginForm(FormMethod.Post)) |
||||
|
{ |
||||
|
<div class="row border"> |
||||
|
<div class="col p-5 "> |
||||
|
<h2> |
||||
|
<span class="text-primary">Create</span> |
||||
|
<span class="text-success">New Project</span> |
||||
|
|
||||
|
</h2> |
||||
|
|
||||
|
<p>This wizard creates a new project from the startup template which is properly configured to jump start to your project.</p> |
||||
|
|
||||
|
<div class="form-group"> |
||||
|
<label for="CompanyAndProjectName">Project Name (as <i>YourProjectName</i> or <i>YourCompanyName.YourProjectName</i>):</label> |
||||
|
<input class="form-control" name="CompanyAndProjectName" value="@Model.CompanyAndProjectName"> |
||||
|
</div> |
||||
|
|
||||
|
<div class="form-group"> |
||||
|
<label for="ProjectType">Project Type:</label> |
||||
|
<select class="form-control" id="ProjectType" name="ProjectType"> |
||||
|
<option value="MvcApp">ASP.NET Core Mvc Application</option> |
||||
|
<option value="MvcModule">ASP.NET Core Mvc Module</option> |
||||
|
</select> |
||||
|
</div> |
||||
|
|
||||
|
<div class="form-group" id="DatabaseProviderFormGroup"> |
||||
|
<label for="DatabaseProvider">Database Provider:</label> |
||||
|
<select class="form-control" id="DatabaseProvider" name="DatabaseProvider"> |
||||
|
<option value="EntityFrameworkCore">Entity Framework Core</option> |
||||
|
<option value="MongoDb">MongoDB</option> |
||||
|
</select> |
||||
|
</div> |
||||
|
|
||||
|
@if (DebugHelper.IsDebug) |
||||
|
{ |
||||
|
<div class="form-group"> |
||||
|
<label for="DatabaseProvider">Version:</label> |
||||
|
<select class="form-control" id="Version" name="Version"> |
||||
|
<option value="LatestStable">Latest stable</option> |
||||
|
<option value="LatestUnstable">Latest (including previews)</option> |
||||
|
<option value="Branch:master">Latest (master branch)</option> |
||||
|
</select> |
||||
|
</div> |
||||
|
|
||||
|
<abp-input asp-for="ReplaceLocalReferencesToNuget" /> |
||||
|
} |
||||
|
|
||||
|
<div class="form-group mt-4"> |
||||
|
<abp-button button-type="Success" size="Large" type="submit">Create Now <i class="fa fa-long-arrow-right"></i> </abp-button> |
||||
|
</div> |
||||
|
|
||||
|
</div> |
||||
|
<div class="col-md-5 bg-light p-5"> |
||||
|
<h4>The Startup Project</h4> |
||||
|
<p>See <a href="/documents/abp/latest/Getting-Started-AspNetCore-MVC-Template" target="_blank">the documentation</a> to understand how to run the downloaded project.</p> |
||||
|
|
||||
|
<h4>Tutorial</h4> |
||||
|
|
||||
|
<p>See <a href="/documents/abp/latest/Tutorials/AspNetCore-Mvc/Part-I" target="_blank">the tutorial</a> to learn how to develop applications based on the ABP framework.</p> |
||||
|
|
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
} |
||||
|
|
||||
|
</div> |
||||
|
</div> |
||||
@ -0,0 +1,72 @@ |
|||||
|
using System.ComponentModel.DataAnnotations; |
||||
|
using System.Threading.Tasks; |
||||
|
using Microsoft.AspNetCore.Mvc; |
||||
|
using Volo.Abp.AspNetCore.Mvc.UI.RazorPages; |
||||
|
using Volo.Abp.Configuration; |
||||
|
using Volo.AbpWebSite.Templates; |
||||
|
using Volo.Utils.SolutionTemplating; |
||||
|
using Volo.Utils.SolutionTemplating.Building; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.Pages |
||||
|
{ |
||||
|
public class TemplatesModel : AbpPageModel |
||||
|
{ |
||||
|
private readonly SolutionBuilder _solutionBuilder; |
||||
|
private readonly IConfigurationAccessor _configurationAccessor; |
||||
|
|
||||
|
public TemplatesModel(SolutionBuilder solutionBuilder, IConfigurationAccessor configurationAccessor) |
||||
|
{ |
||||
|
_solutionBuilder = solutionBuilder; |
||||
|
_configurationAccessor = configurationAccessor; |
||||
|
} |
||||
|
|
||||
|
[BindProperty] |
||||
|
public string CompanyAndProjectName { get; set; } |
||||
|
|
||||
|
[BindProperty] |
||||
|
public string ProjectType { get; set; } |
||||
|
|
||||
|
[BindProperty] |
||||
|
public string Version { get; set; } = StandardVersions.LatestStable; |
||||
|
|
||||
|
[BindProperty] |
||||
|
public DatabaseProvider DatabaseProvider { get; set; } = DatabaseProvider.EntityFrameworkCore; |
||||
|
|
||||
|
[BindProperty] |
||||
|
[Display(Name = "Replace local references by nuget packages.")] |
||||
|
public bool ReplaceLocalReferencesToNuget { get; set; } = true; |
||||
|
|
||||
|
public void OnGet() |
||||
|
{ |
||||
|
|
||||
|
} |
||||
|
|
||||
|
public async Task<ActionResult> OnPostAsync() |
||||
|
{ |
||||
|
var template = CreateTemplateInfo(); |
||||
|
|
||||
|
var result = await _solutionBuilder.BuildAsync( |
||||
|
template, |
||||
|
CompanyAndProjectName, |
||||
|
DatabaseProvider, |
||||
|
Version, |
||||
|
ReplaceLocalReferencesToNuget |
||||
|
); |
||||
|
|
||||
|
return File(result.ZipContent, "application/zip", result.ProjectName + ".zip"); |
||||
|
} |
||||
|
|
||||
|
private TemplateInfo CreateTemplateInfo() |
||||
|
{ |
||||
|
switch (ProjectType) |
||||
|
{ |
||||
|
case "MvcModule": |
||||
|
DatabaseProvider = DatabaseProvider.Irrelevant; |
||||
|
return new MvcModuleTemplate(_configurationAccessor.Configuration); |
||||
|
case "MvcApp": |
||||
|
default: |
||||
|
return new MvcApplicationTemplate(_configurationAccessor.Configuration); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,5 @@ |
|||||
|
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers |
||||
|
@addTagHelper *, Volo.Abp.AspNetCore.Mvc.UI |
||||
|
@addTagHelper *, Volo.Abp.AspNetCore.Mvc.UI.Bootstrap |
||||
|
@addTagHelper *, Volo.Abp.AspNetCore.Mvc.UI.Bundling |
||||
|
@addTagHelper *, Volo.Blogging.Web |
||||
@ -0,0 +1,11 @@ |
|||||
|
(function($) { |
||||
|
$(function() { |
||||
|
$('#ProjectType').change(function() { |
||||
|
if ($(this).val() === 'MvcApp') { |
||||
|
$('#DatabaseProviderFormGroup').show('fast'); |
||||
|
} else { |
||||
|
$('#DatabaseProviderFormGroup').hide('fast'); |
||||
|
} |
||||
|
}); |
||||
|
}); |
||||
|
})(jQuery); |
||||
@ -0,0 +1,21 @@ |
|||||
|
using System.IO; |
||||
|
using Microsoft.AspNetCore.Hosting; |
||||
|
|
||||
|
namespace Volo.AbpWebSite |
||||
|
{ |
||||
|
public class Program |
||||
|
{ |
||||
|
public static void Main(string[] args) |
||||
|
{ |
||||
|
BuildWebHostInternal(args).Run(); |
||||
|
} |
||||
|
|
||||
|
internal static IWebHost BuildWebHostInternal(string[] args) => |
||||
|
new WebHostBuilder() |
||||
|
.UseKestrel() |
||||
|
.UseContentRoot(Directory.GetCurrentDirectory()) |
||||
|
.UseIISIntegration() |
||||
|
.UseStartup<Startup>() |
||||
|
.Build(); |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,27 @@ |
|||||
|
{ |
||||
|
"iisSettings": { |
||||
|
"windowsAuthentication": false, |
||||
|
"anonymousAuthentication": true, |
||||
|
"iisExpress": { |
||||
|
"applicationUrl": "http://localhost:53074/", |
||||
|
"sslPort": 0 |
||||
|
} |
||||
|
}, |
||||
|
"profiles": { |
||||
|
"IIS Express": { |
||||
|
"commandName": "IISExpress", |
||||
|
"launchBrowser": true, |
||||
|
"environmentVariables": { |
||||
|
"ASPNETCORE_ENVIRONMENT": "Development" |
||||
|
} |
||||
|
}, |
||||
|
"Volo.AbpWebSite.Web": { |
||||
|
"commandName": "Project", |
||||
|
"launchBrowser": true, |
||||
|
"environmentVariables": { |
||||
|
"ASPNETCORE_ENVIRONMENT": "Development" |
||||
|
}, |
||||
|
"applicationUrl": "http://localhost:53075/" |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,39 @@ |
|||||
|
using System; |
||||
|
using System.Text; |
||||
|
using Microsoft.AspNetCore.Builder; |
||||
|
using Microsoft.Extensions.DependencyInjection; |
||||
|
using Microsoft.Extensions.Logging; |
||||
|
using Serilog; |
||||
|
using Volo.Abp; |
||||
|
|
||||
|
namespace Volo.AbpWebSite |
||||
|
{ |
||||
|
public class Startup |
||||
|
{ |
||||
|
public IServiceProvider ConfigureServices(IServiceCollection services) |
||||
|
{ |
||||
|
services.AddApplication<AbpWebSiteWebModule>(options => |
||||
|
{ |
||||
|
options.UseAutofac(); |
||||
|
}); |
||||
|
|
||||
|
return services.BuildServiceProviderFromFactory(); |
||||
|
} |
||||
|
|
||||
|
public void Configure(IApplicationBuilder app, ILoggerFactory loggerFactory) |
||||
|
{ |
||||
|
loggerFactory |
||||
|
.AddConsole() |
||||
|
.AddDebug() |
||||
|
.AddSerilog(new LoggerConfiguration() |
||||
|
.Enrich.FromLogContext() |
||||
|
.WriteTo.File("Logs/logs.txt") |
||||
|
.CreateLogger() |
||||
|
); |
||||
|
|
||||
|
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); |
||||
|
|
||||
|
app.InitializeApplication(); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,2 @@ |
|||||
|
This folder contains template downloads. |
||||
|
Should grant write permission for IIS. |
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,50 @@ |
|||||
|
using System.Collections.Generic; |
||||
|
using Microsoft.Extensions.Configuration; |
||||
|
using Volo.Utils.SolutionTemplating.Building; |
||||
|
using Volo.Utils.SolutionTemplating.Building.Steps; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.Templates |
||||
|
{ |
||||
|
public class MvcApplicationTemplate : TemplateInfo |
||||
|
{ |
||||
|
public MvcApplicationTemplate(IConfigurationRoot configuration) |
||||
|
: base( |
||||
|
"abp-mvc-app", |
||||
|
new GithubRepositoryInfo("abpframework/abp", configuration["GithubAccessToken"]), |
||||
|
"/templates/mvc") |
||||
|
{ |
||||
|
|
||||
|
} |
||||
|
|
||||
|
public override IEnumerable<ProjectBuildPipelineStep> GetCustomSteps(ProjectBuildContext context) |
||||
|
{ |
||||
|
var steps = new List<ProjectBuildPipelineStep>(); |
||||
|
SwitchDatabaseProvider(context, steps); |
||||
|
RemoveOtherDatabaseProviders(context, steps); |
||||
|
return steps; |
||||
|
} |
||||
|
|
||||
|
private static void SwitchDatabaseProvider(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) |
||||
|
{ |
||||
|
if (context.Request.DatabaseProvider == DatabaseProvider.MongoDb) |
||||
|
{ |
||||
|
steps.Add(new SwitchEntityFrameworkCoreToMongoDbStep()); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
private static void RemoveOtherDatabaseProviders(ProjectBuildContext context, List<ProjectBuildPipelineStep> steps) |
||||
|
{ |
||||
|
if (context.Request.DatabaseProvider != DatabaseProvider.EntityFrameworkCore) |
||||
|
{ |
||||
|
steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.EntityFrameworkCore")); |
||||
|
steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Application.Tests", projectFolderPath: "test/MyCompanyName.MyProjectName.Application.Tests")); |
||||
|
steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Web.Tests", projectFolderPath: "test/MyCompanyName.MyProjectName.Web.Tests")); |
||||
|
} |
||||
|
|
||||
|
if (context.Request.DatabaseProvider != DatabaseProvider.MongoDb) |
||||
|
{ |
||||
|
steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.MongoDB")); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,18 @@ |
|||||
|
|
||||
|
using Microsoft.Extensions.Configuration; |
||||
|
using Volo.Utils.SolutionTemplating.Building; |
||||
|
|
||||
|
namespace Volo.AbpWebSite.Templates |
||||
|
{ |
||||
|
public class MvcModuleTemplate : TemplateInfo |
||||
|
{ |
||||
|
public MvcModuleTemplate(IConfigurationRoot configuration) |
||||
|
: base( |
||||
|
"abp-mvc-module", |
||||
|
new GithubRepositoryInfo("abpframework/abp", configuration["GithubAccessToken"]), |
||||
|
"/templates/module") |
||||
|
{ |
||||
|
|
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,51 @@ |
|||||
|
<Project Sdk="Microsoft.NET.Sdk.Web"> |
||||
|
|
||||
|
<PropertyGroup> |
||||
|
<TargetFramework>netcoreapp2.1</TargetFramework> |
||||
|
<RootNamespace>Volo.AbpWebSite</RootNamespace> |
||||
|
<AssetTargetFallback>$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;</AssetTargetFallback> |
||||
|
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> |
||||
|
<GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType> |
||||
|
<GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles> |
||||
|
<PreserveCompilationContext>true</PreserveCompilationContext> |
||||
|
<MvcRazorExcludeRefAssembliesFromPublish>false</MvcRazorExcludeRefAssembliesFromPublish> |
||||
|
<MvcRazorCompileOnPublish>true</MvcRazorCompileOnPublish> |
||||
|
<UserSecretsId>c140514f-e488-4c99-8b9a-fabee0f53ce0</UserSecretsId> |
||||
|
</PropertyGroup> |
||||
|
|
||||
|
<ItemGroup> |
||||
|
<PackageReference Include="Microsoft.AspNetCore.All" Version="2.1.1" /> |
||||
|
<PackageReference Include="Serilog.Extensions.Logging" Version="2.0.2" /> |
||||
|
<PackageReference Include="Serilog.Sinks.File" Version="4.0.0" /> |
||||
|
<PackageReference Include="System.Text.Encoding.CodePages" Version="4.5.0" /> |
||||
|
</ItemGroup> |
||||
|
|
||||
|
<ItemGroup> |
||||
|
<ProjectReference Include="..\Volo.AbpWebSite.Application\Volo.AbpWebSite.Application.csproj" /> |
||||
|
<ProjectReference Include="..\Volo.AbpWebSite.EntityFrameworkCore\Volo.AbpWebSite.EntityFrameworkCore.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\..\abp\framework\src\Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared\Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\..\abp\framework\src\Volo.Abp.Autofac\Volo.Abp.Autofac.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\..\abp\modules\docs\src\Volo.Docs.Application\Volo.Docs.Application.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\..\abp\modules\docs\src\Volo.Docs.Web\Volo.Docs.Web.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\..\abp\modules\blogging\src\Volo.Blogging.Web\Volo.Blogging.Web.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\..\abp\modules\blogging\src\Volo.Blogging.Application\Volo.Blogging.Application.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\..\abp\modules\identity\src\Volo.Abp.Identity.Application\Volo.Abp.Identity.Application.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\..\abp\modules\identity\src\Volo.Abp.Identity.Web\Volo.Abp.Identity.Web.csproj" /> |
||||
|
<ProjectReference Include="..\..\..\..\..\abp\modules\account\src\Volo.Abp.Account.Web\Volo.Abp.Account.Web.csproj" /> |
||||
|
</ItemGroup> |
||||
|
|
||||
|
<ItemGroup> |
||||
|
<Content Include="Pages\*.js" /> |
||||
|
<Content Include="Pages\*.css" /> |
||||
|
<None Remove="TemplateFiles\*.zip" /> |
||||
|
<Compile Remove="Logs\**" /> |
||||
|
<Content Remove="Logs\**" /> |
||||
|
<EmbeddedResource Remove="Logs\**" /> |
||||
|
<None Remove="Logs\**" /> |
||||
|
</ItemGroup> |
||||
|
|
||||
|
<ItemGroup> |
||||
|
<Folder Include="Downloads\" /> |
||||
|
</ItemGroup> |
||||
|
|
||||
|
</Project> |
||||
@ -0,0 +1,12 @@ |
|||||
|
module.exports = { |
||||
|
aliases: { |
||||
|
"@node_modules": "./node_modules", |
||||
|
"@libs": "./wwwroot/libs" |
||||
|
}, |
||||
|
clean: [ |
||||
|
"@libs" |
||||
|
], |
||||
|
mappings: { |
||||
|
|
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,6 @@ |
|||||
|
{ |
||||
|
"ConnectionStrings": { |
||||
|
"Default": "Server=localhost;Database=AbpIo;Trusted_Connection=True;MultipleActiveResultSets=true" |
||||
|
}, |
||||
|
"GithubAccessToken": "[# set Github SSH key #]" |
||||
|
} |
||||
@ -0,0 +1,6 @@ |
|||||
|
[ |
||||
|
{ |
||||
|
"outputFile": "wwwroot/scss/vs.css", |
||||
|
"inputFile": "wwwroot/scss/vs.scss" |
||||
|
} |
||||
|
] |
||||
@ -0,0 +1,49 @@ |
|||||
|
{ |
||||
|
"compilers": { |
||||
|
"less": { |
||||
|
"autoPrefix": "", |
||||
|
"cssComb": "none", |
||||
|
"ieCompat": true, |
||||
|
"strictMath": false, |
||||
|
"strictUnits": false, |
||||
|
"relativeUrls": true, |
||||
|
"rootPath": "", |
||||
|
"sourceMapRoot": "", |
||||
|
"sourceMapBasePath": "", |
||||
|
"sourceMap": false |
||||
|
}, |
||||
|
"sass": { |
||||
|
"includePath": "", |
||||
|
"indentType": "space", |
||||
|
"indentWidth": 2, |
||||
|
"outputStyle": "nested", |
||||
|
"Precision": 5, |
||||
|
"relativeUrls": true, |
||||
|
"sourceMapRoot": "", |
||||
|
"sourceMap": false |
||||
|
}, |
||||
|
"stylus": { |
||||
|
"sourceMap": false |
||||
|
}, |
||||
|
"babel": { |
||||
|
"sourceMap": false |
||||
|
}, |
||||
|
"coffeescript": { |
||||
|
"bare": false, |
||||
|
"runtimeMode": "node", |
||||
|
"sourceMap": false |
||||
|
} |
||||
|
}, |
||||
|
"minifiers": { |
||||
|
"css": { |
||||
|
"enabled": true, |
||||
|
"termSemicolons": true, |
||||
|
"gzip": false |
||||
|
}, |
||||
|
"javascript": { |
||||
|
"enabled": true, |
||||
|
"termSemicolons": true, |
||||
|
"gzip": false |
||||
|
} |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,11 @@ |
|||||
|
"use strict"; |
||||
|
|
||||
|
var gulp = require("gulp"), |
||||
|
path = require('path'), |
||||
|
copyResources = require('./node_modules/@abp/aspnetcore.mvc.ui/gulp/copy-resources.js'); |
||||
|
|
||||
|
copyResources.init(path.resolve('./')); |
||||
|
|
||||
|
gulp.task('default', [copyResources.taskName], function () { |
||||
|
|
||||
|
}); |
||||
@ -0,0 +1,9 @@ |
|||||
|
{ |
||||
|
"version": "0.1.0", |
||||
|
"name": "volo.aspnetzero.support", |
||||
|
"private": true, |
||||
|
"dependencies": { |
||||
|
"@abp/aspnetcore.mvc.ui.theme.basic": "^0.4.9", |
||||
|
"@abp/blogging": "^0.4.9" |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,7 @@ |
|||||
|
{ |
||||
|
".well-known/": {}, |
||||
|
"TemplateFiles/": {}, |
||||
|
"wwwroot/files/": {}, |
||||
|
"appsettings.json": {}, |
||||
|
"web.config": {} |
||||
|
} |
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
After Width: | Height: | Size: 2.1 KiB |
|
After Width: | Height: | Size: 2.2 KiB |
|
After Width: | Height: | Size: 2.2 KiB |
|
After Width: | Height: | Size: 3.7 KiB |
@ -0,0 +1,7 @@ |
|||||
|
I hope you love Font Awesome. If you've found it useful, please do me a favor and check out my latest project, |
||||
|
Fort Awesome (https://fortawesome.com). It makes it easy to put the perfect icons on your website. Choose from our awesome, |
||||
|
comprehensive icon sets or copy and paste your own. |
||||
|
|
||||
|
Please. Check it out. |
||||
|
|
||||
|
-Dave Gandy |
||||
File diff suppressed because it is too large
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
|
After Width: | Height: | Size: 434 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,34 @@ |
|||||
|
// Animated Icons |
||||
|
// -------------------------- |
||||
|
|
||||
|
.@{fa-css-prefix}-spin { |
||||
|
-webkit-animation: fa-spin 2s infinite linear; |
||||
|
animation: fa-spin 2s infinite linear; |
||||
|
} |
||||
|
|
||||
|
.@{fa-css-prefix}-pulse { |
||||
|
-webkit-animation: fa-spin 1s infinite steps(8); |
||||
|
animation: fa-spin 1s infinite steps(8); |
||||
|
} |
||||
|
|
||||
|
@-webkit-keyframes fa-spin { |
||||
|
0% { |
||||
|
-webkit-transform: rotate(0deg); |
||||
|
transform: rotate(0deg); |
||||
|
} |
||||
|
100% { |
||||
|
-webkit-transform: rotate(359deg); |
||||
|
transform: rotate(359deg); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
@keyframes fa-spin { |
||||
|
0% { |
||||
|
-webkit-transform: rotate(0deg); |
||||
|
transform: rotate(0deg); |
||||
|
} |
||||
|
100% { |
||||
|
-webkit-transform: rotate(359deg); |
||||
|
transform: rotate(359deg); |
||||
|
} |
||||
|
} |
||||
@ -0,0 +1,25 @@ |
|||||
|
// Bordered & Pulled |
||||
|
// ------------------------- |
||||
|
|
||||
|
.@{fa-css-prefix}-border { |
||||
|
padding: .2em .25em .15em; |
||||
|
border: solid .08em @fa-border-color; |
||||
|
border-radius: .1em; |
||||
|
} |
||||
|
|
||||
|
.@{fa-css-prefix}-pull-left { float: left; } |
||||
|
.@{fa-css-prefix}-pull-right { float: right; } |
||||
|
|
||||
|
.@{fa-css-prefix} { |
||||
|
&.@{fa-css-prefix}-pull-left { margin-right: .3em; } |
||||
|
&.@{fa-css-prefix}-pull-right { margin-left: .3em; } |
||||
|
} |
||||
|
|
||||
|
/* Deprecated as of 4.4.0 */ |
||||
|
.pull-right { float: right; } |
||||
|
.pull-left { float: left; } |
||||
|
|
||||
|
.@{fa-css-prefix} { |
||||
|
&.pull-left { margin-right: .3em; } |
||||
|
&.pull-right { margin-left: .3em; } |
||||
|
} |
||||
@ -0,0 +1,12 @@ |
|||||
|
// Base Class Definition |
||||
|
// ------------------------- |
||||
|
|
||||
|
.@{fa-css-prefix} { |
||||
|
display: inline-block; |
||||
|
font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration |
||||
|
font-size: inherit; // can't have font-size inherit on line above, so need to override |
||||
|
text-rendering: auto; // optimizelegibility throws things off #1094 |
||||
|
-webkit-font-smoothing: antialiased; |
||||
|
-moz-osx-font-smoothing: grayscale; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,6 @@ |
|||||
|
// Fixed Width Icons |
||||
|
// ------------------------- |
||||
|
.@{fa-css-prefix}-fw { |
||||
|
width: (18em / 14); |
||||
|
text-align: center; |
||||
|
} |
||||
@ -0,0 +1,18 @@ |
|||||
|
/*! |
||||
|
* Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome |
||||
|
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) |
||||
|
*/ |
||||
|
|
||||
|
@import "variables.less"; |
||||
|
@import "mixins.less"; |
||||
|
@import "path.less"; |
||||
|
@import "core.less"; |
||||
|
@import "larger.less"; |
||||
|
@import "fixed-width.less"; |
||||
|
@import "list.less"; |
||||
|
@import "bordered-pulled.less"; |
||||
|
@import "animated.less"; |
||||
|
@import "rotated-flipped.less"; |
||||
|
@import "stacked.less"; |
||||
|
@import "icons.less"; |
||||
|
@import "screen-reader.less"; |
||||
@ -0,0 +1,789 @@ |
|||||
|
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen |
||||
|
readers do not read off random characters that represent icons */ |
||||
|
|
||||
|
.@{fa-css-prefix}-glass:before { content: @fa-var-glass; } |
||||
|
.@{fa-css-prefix}-music:before { content: @fa-var-music; } |
||||
|
.@{fa-css-prefix}-search:before { content: @fa-var-search; } |
||||
|
.@{fa-css-prefix}-envelope-o:before { content: @fa-var-envelope-o; } |
||||
|
.@{fa-css-prefix}-heart:before { content: @fa-var-heart; } |
||||
|
.@{fa-css-prefix}-star:before { content: @fa-var-star; } |
||||
|
.@{fa-css-prefix}-star-o:before { content: @fa-var-star-o; } |
||||
|
.@{fa-css-prefix}-user:before { content: @fa-var-user; } |
||||
|
.@{fa-css-prefix}-film:before { content: @fa-var-film; } |
||||
|
.@{fa-css-prefix}-th-large:before { content: @fa-var-th-large; } |
||||
|
.@{fa-css-prefix}-th:before { content: @fa-var-th; } |
||||
|
.@{fa-css-prefix}-th-list:before { content: @fa-var-th-list; } |
||||
|
.@{fa-css-prefix}-check:before { content: @fa-var-check; } |
||||
|
.@{fa-css-prefix}-remove:before, |
||||
|
.@{fa-css-prefix}-close:before, |
||||
|
.@{fa-css-prefix}-times:before { content: @fa-var-times; } |
||||
|
.@{fa-css-prefix}-search-plus:before { content: @fa-var-search-plus; } |
||||
|
.@{fa-css-prefix}-search-minus:before { content: @fa-var-search-minus; } |
||||
|
.@{fa-css-prefix}-power-off:before { content: @fa-var-power-off; } |
||||
|
.@{fa-css-prefix}-signal:before { content: @fa-var-signal; } |
||||
|
.@{fa-css-prefix}-gear:before, |
||||
|
.@{fa-css-prefix}-cog:before { content: @fa-var-cog; } |
||||
|
.@{fa-css-prefix}-trash-o:before { content: @fa-var-trash-o; } |
||||
|
.@{fa-css-prefix}-home:before { content: @fa-var-home; } |
||||
|
.@{fa-css-prefix}-file-o:before { content: @fa-var-file-o; } |
||||
|
.@{fa-css-prefix}-clock-o:before { content: @fa-var-clock-o; } |
||||
|
.@{fa-css-prefix}-road:before { content: @fa-var-road; } |
||||
|
.@{fa-css-prefix}-download:before { content: @fa-var-download; } |
||||
|
.@{fa-css-prefix}-arrow-circle-o-down:before { content: @fa-var-arrow-circle-o-down; } |
||||
|
.@{fa-css-prefix}-arrow-circle-o-up:before { content: @fa-var-arrow-circle-o-up; } |
||||
|
.@{fa-css-prefix}-inbox:before { content: @fa-var-inbox; } |
||||
|
.@{fa-css-prefix}-play-circle-o:before { content: @fa-var-play-circle-o; } |
||||
|
.@{fa-css-prefix}-rotate-right:before, |
||||
|
.@{fa-css-prefix}-repeat:before { content: @fa-var-repeat; } |
||||
|
.@{fa-css-prefix}-refresh:before { content: @fa-var-refresh; } |
||||
|
.@{fa-css-prefix}-list-alt:before { content: @fa-var-list-alt; } |
||||
|
.@{fa-css-prefix}-lock:before { content: @fa-var-lock; } |
||||
|
.@{fa-css-prefix}-flag:before { content: @fa-var-flag; } |
||||
|
.@{fa-css-prefix}-headphones:before { content: @fa-var-headphones; } |
||||
|
.@{fa-css-prefix}-volume-off:before { content: @fa-var-volume-off; } |
||||
|
.@{fa-css-prefix}-volume-down:before { content: @fa-var-volume-down; } |
||||
|
.@{fa-css-prefix}-volume-up:before { content: @fa-var-volume-up; } |
||||
|
.@{fa-css-prefix}-qrcode:before { content: @fa-var-qrcode; } |
||||
|
.@{fa-css-prefix}-barcode:before { content: @fa-var-barcode; } |
||||
|
.@{fa-css-prefix}-tag:before { content: @fa-var-tag; } |
||||
|
.@{fa-css-prefix}-tags:before { content: @fa-var-tags; } |
||||
|
.@{fa-css-prefix}-book:before { content: @fa-var-book; } |
||||
|
.@{fa-css-prefix}-bookmark:before { content: @fa-var-bookmark; } |
||||
|
.@{fa-css-prefix}-print:before { content: @fa-var-print; } |
||||
|
.@{fa-css-prefix}-camera:before { content: @fa-var-camera; } |
||||
|
.@{fa-css-prefix}-font:before { content: @fa-var-font; } |
||||
|
.@{fa-css-prefix}-bold:before { content: @fa-var-bold; } |
||||
|
.@{fa-css-prefix}-italic:before { content: @fa-var-italic; } |
||||
|
.@{fa-css-prefix}-text-height:before { content: @fa-var-text-height; } |
||||
|
.@{fa-css-prefix}-text-width:before { content: @fa-var-text-width; } |
||||
|
.@{fa-css-prefix}-align-left:before { content: @fa-var-align-left; } |
||||
|
.@{fa-css-prefix}-align-center:before { content: @fa-var-align-center; } |
||||
|
.@{fa-css-prefix}-align-right:before { content: @fa-var-align-right; } |
||||
|
.@{fa-css-prefix}-align-justify:before { content: @fa-var-align-justify; } |
||||
|
.@{fa-css-prefix}-list:before { content: @fa-var-list; } |
||||
|
.@{fa-css-prefix}-dedent:before, |
||||
|
.@{fa-css-prefix}-outdent:before { content: @fa-var-outdent; } |
||||
|
.@{fa-css-prefix}-indent:before { content: @fa-var-indent; } |
||||
|
.@{fa-css-prefix}-video-camera:before { content: @fa-var-video-camera; } |
||||
|
.@{fa-css-prefix}-photo:before, |
||||
|
.@{fa-css-prefix}-image:before, |
||||
|
.@{fa-css-prefix}-picture-o:before { content: @fa-var-picture-o; } |
||||
|
.@{fa-css-prefix}-pencil:before { content: @fa-var-pencil; } |
||||
|
.@{fa-css-prefix}-map-marker:before { content: @fa-var-map-marker; } |
||||
|
.@{fa-css-prefix}-adjust:before { content: @fa-var-adjust; } |
||||
|
.@{fa-css-prefix}-tint:before { content: @fa-var-tint; } |
||||
|
.@{fa-css-prefix}-edit:before, |
||||
|
.@{fa-css-prefix}-pencil-square-o:before { content: @fa-var-pencil-square-o; } |
||||
|
.@{fa-css-prefix}-share-square-o:before { content: @fa-var-share-square-o; } |
||||
|
.@{fa-css-prefix}-check-square-o:before { content: @fa-var-check-square-o; } |
||||
|
.@{fa-css-prefix}-arrows:before { content: @fa-var-arrows; } |
||||
|
.@{fa-css-prefix}-step-backward:before { content: @fa-var-step-backward; } |
||||
|
.@{fa-css-prefix}-fast-backward:before { content: @fa-var-fast-backward; } |
||||
|
.@{fa-css-prefix}-backward:before { content: @fa-var-backward; } |
||||
|
.@{fa-css-prefix}-play:before { content: @fa-var-play; } |
||||
|
.@{fa-css-prefix}-pause:before { content: @fa-var-pause; } |
||||
|
.@{fa-css-prefix}-stop:before { content: @fa-var-stop; } |
||||
|
.@{fa-css-prefix}-forward:before { content: @fa-var-forward; } |
||||
|
.@{fa-css-prefix}-fast-forward:before { content: @fa-var-fast-forward; } |
||||
|
.@{fa-css-prefix}-step-forward:before { content: @fa-var-step-forward; } |
||||
|
.@{fa-css-prefix}-eject:before { content: @fa-var-eject; } |
||||
|
.@{fa-css-prefix}-chevron-left:before { content: @fa-var-chevron-left; } |
||||
|
.@{fa-css-prefix}-chevron-right:before { content: @fa-var-chevron-right; } |
||||
|
.@{fa-css-prefix}-plus-circle:before { content: @fa-var-plus-circle; } |
||||
|
.@{fa-css-prefix}-minus-circle:before { content: @fa-var-minus-circle; } |
||||
|
.@{fa-css-prefix}-times-circle:before { content: @fa-var-times-circle; } |
||||
|
.@{fa-css-prefix}-check-circle:before { content: @fa-var-check-circle; } |
||||
|
.@{fa-css-prefix}-question-circle:before { content: @fa-var-question-circle; } |
||||
|
.@{fa-css-prefix}-info-circle:before { content: @fa-var-info-circle; } |
||||
|
.@{fa-css-prefix}-crosshairs:before { content: @fa-var-crosshairs; } |
||||
|
.@{fa-css-prefix}-times-circle-o:before { content: @fa-var-times-circle-o; } |
||||
|
.@{fa-css-prefix}-check-circle-o:before { content: @fa-var-check-circle-o; } |
||||
|
.@{fa-css-prefix}-ban:before { content: @fa-var-ban; } |
||||
|
.@{fa-css-prefix}-arrow-left:before { content: @fa-var-arrow-left; } |
||||
|
.@{fa-css-prefix}-arrow-right:before { content: @fa-var-arrow-right; } |
||||
|
.@{fa-css-prefix}-arrow-up:before { content: @fa-var-arrow-up; } |
||||
|
.@{fa-css-prefix}-arrow-down:before { content: @fa-var-arrow-down; } |
||||
|
.@{fa-css-prefix}-mail-forward:before, |
||||
|
.@{fa-css-prefix}-share:before { content: @fa-var-share; } |
||||
|
.@{fa-css-prefix}-expand:before { content: @fa-var-expand; } |
||||
|
.@{fa-css-prefix}-compress:before { content: @fa-var-compress; } |
||||
|
.@{fa-css-prefix}-plus:before { content: @fa-var-plus; } |
||||
|
.@{fa-css-prefix}-minus:before { content: @fa-var-minus; } |
||||
|
.@{fa-css-prefix}-asterisk:before { content: @fa-var-asterisk; } |
||||
|
.@{fa-css-prefix}-exclamation-circle:before { content: @fa-var-exclamation-circle; } |
||||
|
.@{fa-css-prefix}-gift:before { content: @fa-var-gift; } |
||||
|
.@{fa-css-prefix}-leaf:before { content: @fa-var-leaf; } |
||||
|
.@{fa-css-prefix}-fire:before { content: @fa-var-fire; } |
||||
|
.@{fa-css-prefix}-eye:before { content: @fa-var-eye; } |
||||
|
.@{fa-css-prefix}-eye-slash:before { content: @fa-var-eye-slash; } |
||||
|
.@{fa-css-prefix}-warning:before, |
||||
|
.@{fa-css-prefix}-exclamation-triangle:before { content: @fa-var-exclamation-triangle; } |
||||
|
.@{fa-css-prefix}-plane:before { content: @fa-var-plane; } |
||||
|
.@{fa-css-prefix}-calendar:before { content: @fa-var-calendar; } |
||||
|
.@{fa-css-prefix}-random:before { content: @fa-var-random; } |
||||
|
.@{fa-css-prefix}-comment:before { content: @fa-var-comment; } |
||||
|
.@{fa-css-prefix}-magnet:before { content: @fa-var-magnet; } |
||||
|
.@{fa-css-prefix}-chevron-up:before { content: @fa-var-chevron-up; } |
||||
|
.@{fa-css-prefix}-chevron-down:before { content: @fa-var-chevron-down; } |
||||
|
.@{fa-css-prefix}-retweet:before { content: @fa-var-retweet; } |
||||
|
.@{fa-css-prefix}-shopping-cart:before { content: @fa-var-shopping-cart; } |
||||
|
.@{fa-css-prefix}-folder:before { content: @fa-var-folder; } |
||||
|
.@{fa-css-prefix}-folder-open:before { content: @fa-var-folder-open; } |
||||
|
.@{fa-css-prefix}-arrows-v:before { content: @fa-var-arrows-v; } |
||||
|
.@{fa-css-prefix}-arrows-h:before { content: @fa-var-arrows-h; } |
||||
|
.@{fa-css-prefix}-bar-chart-o:before, |
||||
|
.@{fa-css-prefix}-bar-chart:before { content: @fa-var-bar-chart; } |
||||
|
.@{fa-css-prefix}-twitter-square:before { content: @fa-var-twitter-square; } |
||||
|
.@{fa-css-prefix}-facebook-square:before { content: @fa-var-facebook-square; } |
||||
|
.@{fa-css-prefix}-camera-retro:before { content: @fa-var-camera-retro; } |
||||
|
.@{fa-css-prefix}-key:before { content: @fa-var-key; } |
||||
|
.@{fa-css-prefix}-gears:before, |
||||
|
.@{fa-css-prefix}-cogs:before { content: @fa-var-cogs; } |
||||
|
.@{fa-css-prefix}-comments:before { content: @fa-var-comments; } |
||||
|
.@{fa-css-prefix}-thumbs-o-up:before { content: @fa-var-thumbs-o-up; } |
||||
|
.@{fa-css-prefix}-thumbs-o-down:before { content: @fa-var-thumbs-o-down; } |
||||
|
.@{fa-css-prefix}-star-half:before { content: @fa-var-star-half; } |
||||
|
.@{fa-css-prefix}-heart-o:before { content: @fa-var-heart-o; } |
||||
|
.@{fa-css-prefix}-sign-out:before { content: @fa-var-sign-out; } |
||||
|
.@{fa-css-prefix}-linkedin-square:before { content: @fa-var-linkedin-square; } |
||||
|
.@{fa-css-prefix}-thumb-tack:before { content: @fa-var-thumb-tack; } |
||||
|
.@{fa-css-prefix}-external-link:before { content: @fa-var-external-link; } |
||||
|
.@{fa-css-prefix}-sign-in:before { content: @fa-var-sign-in; } |
||||
|
.@{fa-css-prefix}-trophy:before { content: @fa-var-trophy; } |
||||
|
.@{fa-css-prefix}-github-square:before { content: @fa-var-github-square; } |
||||
|
.@{fa-css-prefix}-upload:before { content: @fa-var-upload; } |
||||
|
.@{fa-css-prefix}-lemon-o:before { content: @fa-var-lemon-o; } |
||||
|
.@{fa-css-prefix}-phone:before { content: @fa-var-phone; } |
||||
|
.@{fa-css-prefix}-square-o:before { content: @fa-var-square-o; } |
||||
|
.@{fa-css-prefix}-bookmark-o:before { content: @fa-var-bookmark-o; } |
||||
|
.@{fa-css-prefix}-phone-square:before { content: @fa-var-phone-square; } |
||||
|
.@{fa-css-prefix}-twitter:before { content: @fa-var-twitter; } |
||||
|
.@{fa-css-prefix}-facebook-f:before, |
||||
|
.@{fa-css-prefix}-facebook:before { content: @fa-var-facebook; } |
||||
|
.@{fa-css-prefix}-github:before { content: @fa-var-github; } |
||||
|
.@{fa-css-prefix}-unlock:before { content: @fa-var-unlock; } |
||||
|
.@{fa-css-prefix}-credit-card:before { content: @fa-var-credit-card; } |
||||
|
.@{fa-css-prefix}-feed:before, |
||||
|
.@{fa-css-prefix}-rss:before { content: @fa-var-rss; } |
||||
|
.@{fa-css-prefix}-hdd-o:before { content: @fa-var-hdd-o; } |
||||
|
.@{fa-css-prefix}-bullhorn:before { content: @fa-var-bullhorn; } |
||||
|
.@{fa-css-prefix}-bell:before { content: @fa-var-bell; } |
||||
|
.@{fa-css-prefix}-certificate:before { content: @fa-var-certificate; } |
||||
|
.@{fa-css-prefix}-hand-o-right:before { content: @fa-var-hand-o-right; } |
||||
|
.@{fa-css-prefix}-hand-o-left:before { content: @fa-var-hand-o-left; } |
||||
|
.@{fa-css-prefix}-hand-o-up:before { content: @fa-var-hand-o-up; } |
||||
|
.@{fa-css-prefix}-hand-o-down:before { content: @fa-var-hand-o-down; } |
||||
|
.@{fa-css-prefix}-arrow-circle-left:before { content: @fa-var-arrow-circle-left; } |
||||
|
.@{fa-css-prefix}-arrow-circle-right:before { content: @fa-var-arrow-circle-right; } |
||||
|
.@{fa-css-prefix}-arrow-circle-up:before { content: @fa-var-arrow-circle-up; } |
||||
|
.@{fa-css-prefix}-arrow-circle-down:before { content: @fa-var-arrow-circle-down; } |
||||
|
.@{fa-css-prefix}-globe:before { content: @fa-var-globe; } |
||||
|
.@{fa-css-prefix}-wrench:before { content: @fa-var-wrench; } |
||||
|
.@{fa-css-prefix}-tasks:before { content: @fa-var-tasks; } |
||||
|
.@{fa-css-prefix}-filter:before { content: @fa-var-filter; } |
||||
|
.@{fa-css-prefix}-briefcase:before { content: @fa-var-briefcase; } |
||||
|
.@{fa-css-prefix}-arrows-alt:before { content: @fa-var-arrows-alt; } |
||||
|
.@{fa-css-prefix}-group:before, |
||||
|
.@{fa-css-prefix}-users:before { content: @fa-var-users; } |
||||
|
.@{fa-css-prefix}-chain:before, |
||||
|
.@{fa-css-prefix}-link:before { content: @fa-var-link; } |
||||
|
.@{fa-css-prefix}-cloud:before { content: @fa-var-cloud; } |
||||
|
.@{fa-css-prefix}-flask:before { content: @fa-var-flask; } |
||||
|
.@{fa-css-prefix}-cut:before, |
||||
|
.@{fa-css-prefix}-scissors:before { content: @fa-var-scissors; } |
||||
|
.@{fa-css-prefix}-copy:before, |
||||
|
.@{fa-css-prefix}-files-o:before { content: @fa-var-files-o; } |
||||
|
.@{fa-css-prefix}-paperclip:before { content: @fa-var-paperclip; } |
||||
|
.@{fa-css-prefix}-save:before, |
||||
|
.@{fa-css-prefix}-floppy-o:before { content: @fa-var-floppy-o; } |
||||
|
.@{fa-css-prefix}-square:before { content: @fa-var-square; } |
||||
|
.@{fa-css-prefix}-navicon:before, |
||||
|
.@{fa-css-prefix}-reorder:before, |
||||
|
.@{fa-css-prefix}-bars:before { content: @fa-var-bars; } |
||||
|
.@{fa-css-prefix}-list-ul:before { content: @fa-var-list-ul; } |
||||
|
.@{fa-css-prefix}-list-ol:before { content: @fa-var-list-ol; } |
||||
|
.@{fa-css-prefix}-strikethrough:before { content: @fa-var-strikethrough; } |
||||
|
.@{fa-css-prefix}-underline:before { content: @fa-var-underline; } |
||||
|
.@{fa-css-prefix}-table:before { content: @fa-var-table; } |
||||
|
.@{fa-css-prefix}-magic:before { content: @fa-var-magic; } |
||||
|
.@{fa-css-prefix}-truck:before { content: @fa-var-truck; } |
||||
|
.@{fa-css-prefix}-pinterest:before { content: @fa-var-pinterest; } |
||||
|
.@{fa-css-prefix}-pinterest-square:before { content: @fa-var-pinterest-square; } |
||||
|
.@{fa-css-prefix}-google-plus-square:before { content: @fa-var-google-plus-square; } |
||||
|
.@{fa-css-prefix}-google-plus:before { content: @fa-var-google-plus; } |
||||
|
.@{fa-css-prefix}-money:before { content: @fa-var-money; } |
||||
|
.@{fa-css-prefix}-caret-down:before { content: @fa-var-caret-down; } |
||||
|
.@{fa-css-prefix}-caret-up:before { content: @fa-var-caret-up; } |
||||
|
.@{fa-css-prefix}-caret-left:before { content: @fa-var-caret-left; } |
||||
|
.@{fa-css-prefix}-caret-right:before { content: @fa-var-caret-right; } |
||||
|
.@{fa-css-prefix}-columns:before { content: @fa-var-columns; } |
||||
|
.@{fa-css-prefix}-unsorted:before, |
||||
|
.@{fa-css-prefix}-sort:before { content: @fa-var-sort; } |
||||
|
.@{fa-css-prefix}-sort-down:before, |
||||
|
.@{fa-css-prefix}-sort-desc:before { content: @fa-var-sort-desc; } |
||||
|
.@{fa-css-prefix}-sort-up:before, |
||||
|
.@{fa-css-prefix}-sort-asc:before { content: @fa-var-sort-asc; } |
||||
|
.@{fa-css-prefix}-envelope:before { content: @fa-var-envelope; } |
||||
|
.@{fa-css-prefix}-linkedin:before { content: @fa-var-linkedin; } |
||||
|
.@{fa-css-prefix}-rotate-left:before, |
||||
|
.@{fa-css-prefix}-undo:before { content: @fa-var-undo; } |
||||
|
.@{fa-css-prefix}-legal:before, |
||||
|
.@{fa-css-prefix}-gavel:before { content: @fa-var-gavel; } |
||||
|
.@{fa-css-prefix}-dashboard:before, |
||||
|
.@{fa-css-prefix}-tachometer:before { content: @fa-var-tachometer; } |
||||
|
.@{fa-css-prefix}-comment-o:before { content: @fa-var-comment-o; } |
||||
|
.@{fa-css-prefix}-comments-o:before { content: @fa-var-comments-o; } |
||||
|
.@{fa-css-prefix}-flash:before, |
||||
|
.@{fa-css-prefix}-bolt:before { content: @fa-var-bolt; } |
||||
|
.@{fa-css-prefix}-sitemap:before { content: @fa-var-sitemap; } |
||||
|
.@{fa-css-prefix}-umbrella:before { content: @fa-var-umbrella; } |
||||
|
.@{fa-css-prefix}-paste:before, |
||||
|
.@{fa-css-prefix}-clipboard:before { content: @fa-var-clipboard; } |
||||
|
.@{fa-css-prefix}-lightbulb-o:before { content: @fa-var-lightbulb-o; } |
||||
|
.@{fa-css-prefix}-exchange:before { content: @fa-var-exchange; } |
||||
|
.@{fa-css-prefix}-cloud-download:before { content: @fa-var-cloud-download; } |
||||
|
.@{fa-css-prefix}-cloud-upload:before { content: @fa-var-cloud-upload; } |
||||
|
.@{fa-css-prefix}-user-md:before { content: @fa-var-user-md; } |
||||
|
.@{fa-css-prefix}-stethoscope:before { content: @fa-var-stethoscope; } |
||||
|
.@{fa-css-prefix}-suitcase:before { content: @fa-var-suitcase; } |
||||
|
.@{fa-css-prefix}-bell-o:before { content: @fa-var-bell-o; } |
||||
|
.@{fa-css-prefix}-coffee:before { content: @fa-var-coffee; } |
||||
|
.@{fa-css-prefix}-cutlery:before { content: @fa-var-cutlery; } |
||||
|
.@{fa-css-prefix}-file-text-o:before { content: @fa-var-file-text-o; } |
||||
|
.@{fa-css-prefix}-building-o:before { content: @fa-var-building-o; } |
||||
|
.@{fa-css-prefix}-hospital-o:before { content: @fa-var-hospital-o; } |
||||
|
.@{fa-css-prefix}-ambulance:before { content: @fa-var-ambulance; } |
||||
|
.@{fa-css-prefix}-medkit:before { content: @fa-var-medkit; } |
||||
|
.@{fa-css-prefix}-fighter-jet:before { content: @fa-var-fighter-jet; } |
||||
|
.@{fa-css-prefix}-beer:before { content: @fa-var-beer; } |
||||
|
.@{fa-css-prefix}-h-square:before { content: @fa-var-h-square; } |
||||
|
.@{fa-css-prefix}-plus-square:before { content: @fa-var-plus-square; } |
||||
|
.@{fa-css-prefix}-angle-double-left:before { content: @fa-var-angle-double-left; } |
||||
|
.@{fa-css-prefix}-angle-double-right:before { content: @fa-var-angle-double-right; } |
||||
|
.@{fa-css-prefix}-angle-double-up:before { content: @fa-var-angle-double-up; } |
||||
|
.@{fa-css-prefix}-angle-double-down:before { content: @fa-var-angle-double-down; } |
||||
|
.@{fa-css-prefix}-angle-left:before { content: @fa-var-angle-left; } |
||||
|
.@{fa-css-prefix}-angle-right:before { content: @fa-var-angle-right; } |
||||
|
.@{fa-css-prefix}-angle-up:before { content: @fa-var-angle-up; } |
||||
|
.@{fa-css-prefix}-angle-down:before { content: @fa-var-angle-down; } |
||||
|
.@{fa-css-prefix}-desktop:before { content: @fa-var-desktop; } |
||||
|
.@{fa-css-prefix}-laptop:before { content: @fa-var-laptop; } |
||||
|
.@{fa-css-prefix}-tablet:before { content: @fa-var-tablet; } |
||||
|
.@{fa-css-prefix}-mobile-phone:before, |
||||
|
.@{fa-css-prefix}-mobile:before { content: @fa-var-mobile; } |
||||
|
.@{fa-css-prefix}-circle-o:before { content: @fa-var-circle-o; } |
||||
|
.@{fa-css-prefix}-quote-left:before { content: @fa-var-quote-left; } |
||||
|
.@{fa-css-prefix}-quote-right:before { content: @fa-var-quote-right; } |
||||
|
.@{fa-css-prefix}-spinner:before { content: @fa-var-spinner; } |
||||
|
.@{fa-css-prefix}-circle:before { content: @fa-var-circle; } |
||||
|
.@{fa-css-prefix}-mail-reply:before, |
||||
|
.@{fa-css-prefix}-reply:before { content: @fa-var-reply; } |
||||
|
.@{fa-css-prefix}-github-alt:before { content: @fa-var-github-alt; } |
||||
|
.@{fa-css-prefix}-folder-o:before { content: @fa-var-folder-o; } |
||||
|
.@{fa-css-prefix}-folder-open-o:before { content: @fa-var-folder-open-o; } |
||||
|
.@{fa-css-prefix}-smile-o:before { content: @fa-var-smile-o; } |
||||
|
.@{fa-css-prefix}-frown-o:before { content: @fa-var-frown-o; } |
||||
|
.@{fa-css-prefix}-meh-o:before { content: @fa-var-meh-o; } |
||||
|
.@{fa-css-prefix}-gamepad:before { content: @fa-var-gamepad; } |
||||
|
.@{fa-css-prefix}-keyboard-o:before { content: @fa-var-keyboard-o; } |
||||
|
.@{fa-css-prefix}-flag-o:before { content: @fa-var-flag-o; } |
||||
|
.@{fa-css-prefix}-flag-checkered:before { content: @fa-var-flag-checkered; } |
||||
|
.@{fa-css-prefix}-terminal:before { content: @fa-var-terminal; } |
||||
|
.@{fa-css-prefix}-code:before { content: @fa-var-code; } |
||||
|
.@{fa-css-prefix}-mail-reply-all:before, |
||||
|
.@{fa-css-prefix}-reply-all:before { content: @fa-var-reply-all; } |
||||
|
.@{fa-css-prefix}-star-half-empty:before, |
||||
|
.@{fa-css-prefix}-star-half-full:before, |
||||
|
.@{fa-css-prefix}-star-half-o:before { content: @fa-var-star-half-o; } |
||||
|
.@{fa-css-prefix}-location-arrow:before { content: @fa-var-location-arrow; } |
||||
|
.@{fa-css-prefix}-crop:before { content: @fa-var-crop; } |
||||
|
.@{fa-css-prefix}-code-fork:before { content: @fa-var-code-fork; } |
||||
|
.@{fa-css-prefix}-unlink:before, |
||||
|
.@{fa-css-prefix}-chain-broken:before { content: @fa-var-chain-broken; } |
||||
|
.@{fa-css-prefix}-question:before { content: @fa-var-question; } |
||||
|
.@{fa-css-prefix}-info:before { content: @fa-var-info; } |
||||
|
.@{fa-css-prefix}-exclamation:before { content: @fa-var-exclamation; } |
||||
|
.@{fa-css-prefix}-superscript:before { content: @fa-var-superscript; } |
||||
|
.@{fa-css-prefix}-subscript:before { content: @fa-var-subscript; } |
||||
|
.@{fa-css-prefix}-eraser:before { content: @fa-var-eraser; } |
||||
|
.@{fa-css-prefix}-puzzle-piece:before { content: @fa-var-puzzle-piece; } |
||||
|
.@{fa-css-prefix}-microphone:before { content: @fa-var-microphone; } |
||||
|
.@{fa-css-prefix}-microphone-slash:before { content: @fa-var-microphone-slash; } |
||||
|
.@{fa-css-prefix}-shield:before { content: @fa-var-shield; } |
||||
|
.@{fa-css-prefix}-calendar-o:before { content: @fa-var-calendar-o; } |
||||
|
.@{fa-css-prefix}-fire-extinguisher:before { content: @fa-var-fire-extinguisher; } |
||||
|
.@{fa-css-prefix}-rocket:before { content: @fa-var-rocket; } |
||||
|
.@{fa-css-prefix}-maxcdn:before { content: @fa-var-maxcdn; } |
||||
|
.@{fa-css-prefix}-chevron-circle-left:before { content: @fa-var-chevron-circle-left; } |
||||
|
.@{fa-css-prefix}-chevron-circle-right:before { content: @fa-var-chevron-circle-right; } |
||||
|
.@{fa-css-prefix}-chevron-circle-up:before { content: @fa-var-chevron-circle-up; } |
||||
|
.@{fa-css-prefix}-chevron-circle-down:before { content: @fa-var-chevron-circle-down; } |
||||
|
.@{fa-css-prefix}-html5:before { content: @fa-var-html5; } |
||||
|
.@{fa-css-prefix}-css3:before { content: @fa-var-css3; } |
||||
|
.@{fa-css-prefix}-anchor:before { content: @fa-var-anchor; } |
||||
|
.@{fa-css-prefix}-unlock-alt:before { content: @fa-var-unlock-alt; } |
||||
|
.@{fa-css-prefix}-bullseye:before { content: @fa-var-bullseye; } |
||||
|
.@{fa-css-prefix}-ellipsis-h:before { content: @fa-var-ellipsis-h; } |
||||
|
.@{fa-css-prefix}-ellipsis-v:before { content: @fa-var-ellipsis-v; } |
||||
|
.@{fa-css-prefix}-rss-square:before { content: @fa-var-rss-square; } |
||||
|
.@{fa-css-prefix}-play-circle:before { content: @fa-var-play-circle; } |
||||
|
.@{fa-css-prefix}-ticket:before { content: @fa-var-ticket; } |
||||
|
.@{fa-css-prefix}-minus-square:before { content: @fa-var-minus-square; } |
||||
|
.@{fa-css-prefix}-minus-square-o:before { content: @fa-var-minus-square-o; } |
||||
|
.@{fa-css-prefix}-level-up:before { content: @fa-var-level-up; } |
||||
|
.@{fa-css-prefix}-level-down:before { content: @fa-var-level-down; } |
||||
|
.@{fa-css-prefix}-check-square:before { content: @fa-var-check-square; } |
||||
|
.@{fa-css-prefix}-pencil-square:before { content: @fa-var-pencil-square; } |
||||
|
.@{fa-css-prefix}-external-link-square:before { content: @fa-var-external-link-square; } |
||||
|
.@{fa-css-prefix}-share-square:before { content: @fa-var-share-square; } |
||||
|
.@{fa-css-prefix}-compass:before { content: @fa-var-compass; } |
||||
|
.@{fa-css-prefix}-toggle-down:before, |
||||
|
.@{fa-css-prefix}-caret-square-o-down:before { content: @fa-var-caret-square-o-down; } |
||||
|
.@{fa-css-prefix}-toggle-up:before, |
||||
|
.@{fa-css-prefix}-caret-square-o-up:before { content: @fa-var-caret-square-o-up; } |
||||
|
.@{fa-css-prefix}-toggle-right:before, |
||||
|
.@{fa-css-prefix}-caret-square-o-right:before { content: @fa-var-caret-square-o-right; } |
||||
|
.@{fa-css-prefix}-euro:before, |
||||
|
.@{fa-css-prefix}-eur:before { content: @fa-var-eur; } |
||||
|
.@{fa-css-prefix}-gbp:before { content: @fa-var-gbp; } |
||||
|
.@{fa-css-prefix}-dollar:before, |
||||
|
.@{fa-css-prefix}-usd:before { content: @fa-var-usd; } |
||||
|
.@{fa-css-prefix}-rupee:before, |
||||
|
.@{fa-css-prefix}-inr:before { content: @fa-var-inr; } |
||||
|
.@{fa-css-prefix}-cny:before, |
||||
|
.@{fa-css-prefix}-rmb:before, |
||||
|
.@{fa-css-prefix}-yen:before, |
||||
|
.@{fa-css-prefix}-jpy:before { content: @fa-var-jpy; } |
||||
|
.@{fa-css-prefix}-ruble:before, |
||||
|
.@{fa-css-prefix}-rouble:before, |
||||
|
.@{fa-css-prefix}-rub:before { content: @fa-var-rub; } |
||||
|
.@{fa-css-prefix}-won:before, |
||||
|
.@{fa-css-prefix}-krw:before { content: @fa-var-krw; } |
||||
|
.@{fa-css-prefix}-bitcoin:before, |
||||
|
.@{fa-css-prefix}-btc:before { content: @fa-var-btc; } |
||||
|
.@{fa-css-prefix}-file:before { content: @fa-var-file; } |
||||
|
.@{fa-css-prefix}-file-text:before { content: @fa-var-file-text; } |
||||
|
.@{fa-css-prefix}-sort-alpha-asc:before { content: @fa-var-sort-alpha-asc; } |
||||
|
.@{fa-css-prefix}-sort-alpha-desc:before { content: @fa-var-sort-alpha-desc; } |
||||
|
.@{fa-css-prefix}-sort-amount-asc:before { content: @fa-var-sort-amount-asc; } |
||||
|
.@{fa-css-prefix}-sort-amount-desc:before { content: @fa-var-sort-amount-desc; } |
||||
|
.@{fa-css-prefix}-sort-numeric-asc:before { content: @fa-var-sort-numeric-asc; } |
||||
|
.@{fa-css-prefix}-sort-numeric-desc:before { content: @fa-var-sort-numeric-desc; } |
||||
|
.@{fa-css-prefix}-thumbs-up:before { content: @fa-var-thumbs-up; } |
||||
|
.@{fa-css-prefix}-thumbs-down:before { content: @fa-var-thumbs-down; } |
||||
|
.@{fa-css-prefix}-youtube-square:before { content: @fa-var-youtube-square; } |
||||
|
.@{fa-css-prefix}-youtube:before { content: @fa-var-youtube; } |
||||
|
.@{fa-css-prefix}-xing:before { content: @fa-var-xing; } |
||||
|
.@{fa-css-prefix}-xing-square:before { content: @fa-var-xing-square; } |
||||
|
.@{fa-css-prefix}-youtube-play:before { content: @fa-var-youtube-play; } |
||||
|
.@{fa-css-prefix}-dropbox:before { content: @fa-var-dropbox; } |
||||
|
.@{fa-css-prefix}-stack-overflow:before { content: @fa-var-stack-overflow; } |
||||
|
.@{fa-css-prefix}-instagram:before { content: @fa-var-instagram; } |
||||
|
.@{fa-css-prefix}-flickr:before { content: @fa-var-flickr; } |
||||
|
.@{fa-css-prefix}-adn:before { content: @fa-var-adn; } |
||||
|
.@{fa-css-prefix}-bitbucket:before { content: @fa-var-bitbucket; } |
||||
|
.@{fa-css-prefix}-bitbucket-square:before { content: @fa-var-bitbucket-square; } |
||||
|
.@{fa-css-prefix}-tumblr:before { content: @fa-var-tumblr; } |
||||
|
.@{fa-css-prefix}-tumblr-square:before { content: @fa-var-tumblr-square; } |
||||
|
.@{fa-css-prefix}-long-arrow-down:before { content: @fa-var-long-arrow-down; } |
||||
|
.@{fa-css-prefix}-long-arrow-up:before { content: @fa-var-long-arrow-up; } |
||||
|
.@{fa-css-prefix}-long-arrow-left:before { content: @fa-var-long-arrow-left; } |
||||
|
.@{fa-css-prefix}-long-arrow-right:before { content: @fa-var-long-arrow-right; } |
||||
|
.@{fa-css-prefix}-apple:before { content: @fa-var-apple; } |
||||
|
.@{fa-css-prefix}-windows:before { content: @fa-var-windows; } |
||||
|
.@{fa-css-prefix}-android:before { content: @fa-var-android; } |
||||
|
.@{fa-css-prefix}-linux:before { content: @fa-var-linux; } |
||||
|
.@{fa-css-prefix}-dribbble:before { content: @fa-var-dribbble; } |
||||
|
.@{fa-css-prefix}-skype:before { content: @fa-var-skype; } |
||||
|
.@{fa-css-prefix}-foursquare:before { content: @fa-var-foursquare; } |
||||
|
.@{fa-css-prefix}-trello:before { content: @fa-var-trello; } |
||||
|
.@{fa-css-prefix}-female:before { content: @fa-var-female; } |
||||
|
.@{fa-css-prefix}-male:before { content: @fa-var-male; } |
||||
|
.@{fa-css-prefix}-gittip:before, |
||||
|
.@{fa-css-prefix}-gratipay:before { content: @fa-var-gratipay; } |
||||
|
.@{fa-css-prefix}-sun-o:before { content: @fa-var-sun-o; } |
||||
|
.@{fa-css-prefix}-moon-o:before { content: @fa-var-moon-o; } |
||||
|
.@{fa-css-prefix}-archive:before { content: @fa-var-archive; } |
||||
|
.@{fa-css-prefix}-bug:before { content: @fa-var-bug; } |
||||
|
.@{fa-css-prefix}-vk:before { content: @fa-var-vk; } |
||||
|
.@{fa-css-prefix}-weibo:before { content: @fa-var-weibo; } |
||||
|
.@{fa-css-prefix}-renren:before { content: @fa-var-renren; } |
||||
|
.@{fa-css-prefix}-pagelines:before { content: @fa-var-pagelines; } |
||||
|
.@{fa-css-prefix}-stack-exchange:before { content: @fa-var-stack-exchange; } |
||||
|
.@{fa-css-prefix}-arrow-circle-o-right:before { content: @fa-var-arrow-circle-o-right; } |
||||
|
.@{fa-css-prefix}-arrow-circle-o-left:before { content: @fa-var-arrow-circle-o-left; } |
||||
|
.@{fa-css-prefix}-toggle-left:before, |
||||
|
.@{fa-css-prefix}-caret-square-o-left:before { content: @fa-var-caret-square-o-left; } |
||||
|
.@{fa-css-prefix}-dot-circle-o:before { content: @fa-var-dot-circle-o; } |
||||
|
.@{fa-css-prefix}-wheelchair:before { content: @fa-var-wheelchair; } |
||||
|
.@{fa-css-prefix}-vimeo-square:before { content: @fa-var-vimeo-square; } |
||||
|
.@{fa-css-prefix}-turkish-lira:before, |
||||
|
.@{fa-css-prefix}-try:before { content: @fa-var-try; } |
||||
|
.@{fa-css-prefix}-plus-square-o:before { content: @fa-var-plus-square-o; } |
||||
|
.@{fa-css-prefix}-space-shuttle:before { content: @fa-var-space-shuttle; } |
||||
|
.@{fa-css-prefix}-slack:before { content: @fa-var-slack; } |
||||
|
.@{fa-css-prefix}-envelope-square:before { content: @fa-var-envelope-square; } |
||||
|
.@{fa-css-prefix}-wordpress:before { content: @fa-var-wordpress; } |
||||
|
.@{fa-css-prefix}-openid:before { content: @fa-var-openid; } |
||||
|
.@{fa-css-prefix}-institution:before, |
||||
|
.@{fa-css-prefix}-bank:before, |
||||
|
.@{fa-css-prefix}-university:before { content: @fa-var-university; } |
||||
|
.@{fa-css-prefix}-mortar-board:before, |
||||
|
.@{fa-css-prefix}-graduation-cap:before { content: @fa-var-graduation-cap; } |
||||
|
.@{fa-css-prefix}-yahoo:before { content: @fa-var-yahoo; } |
||||
|
.@{fa-css-prefix}-google:before { content: @fa-var-google; } |
||||
|
.@{fa-css-prefix}-reddit:before { content: @fa-var-reddit; } |
||||
|
.@{fa-css-prefix}-reddit-square:before { content: @fa-var-reddit-square; } |
||||
|
.@{fa-css-prefix}-stumbleupon-circle:before { content: @fa-var-stumbleupon-circle; } |
||||
|
.@{fa-css-prefix}-stumbleupon:before { content: @fa-var-stumbleupon; } |
||||
|
.@{fa-css-prefix}-delicious:before { content: @fa-var-delicious; } |
||||
|
.@{fa-css-prefix}-digg:before { content: @fa-var-digg; } |
||||
|
.@{fa-css-prefix}-pied-piper-pp:before { content: @fa-var-pied-piper-pp; } |
||||
|
.@{fa-css-prefix}-pied-piper-alt:before { content: @fa-var-pied-piper-alt; } |
||||
|
.@{fa-css-prefix}-drupal:before { content: @fa-var-drupal; } |
||||
|
.@{fa-css-prefix}-joomla:before { content: @fa-var-joomla; } |
||||
|
.@{fa-css-prefix}-language:before { content: @fa-var-language; } |
||||
|
.@{fa-css-prefix}-fax:before { content: @fa-var-fax; } |
||||
|
.@{fa-css-prefix}-building:before { content: @fa-var-building; } |
||||
|
.@{fa-css-prefix}-child:before { content: @fa-var-child; } |
||||
|
.@{fa-css-prefix}-paw:before { content: @fa-var-paw; } |
||||
|
.@{fa-css-prefix}-spoon:before { content: @fa-var-spoon; } |
||||
|
.@{fa-css-prefix}-cube:before { content: @fa-var-cube; } |
||||
|
.@{fa-css-prefix}-cubes:before { content: @fa-var-cubes; } |
||||
|
.@{fa-css-prefix}-behance:before { content: @fa-var-behance; } |
||||
|
.@{fa-css-prefix}-behance-square:before { content: @fa-var-behance-square; } |
||||
|
.@{fa-css-prefix}-steam:before { content: @fa-var-steam; } |
||||
|
.@{fa-css-prefix}-steam-square:before { content: @fa-var-steam-square; } |
||||
|
.@{fa-css-prefix}-recycle:before { content: @fa-var-recycle; } |
||||
|
.@{fa-css-prefix}-automobile:before, |
||||
|
.@{fa-css-prefix}-car:before { content: @fa-var-car; } |
||||
|
.@{fa-css-prefix}-cab:before, |
||||
|
.@{fa-css-prefix}-taxi:before { content: @fa-var-taxi; } |
||||
|
.@{fa-css-prefix}-tree:before { content: @fa-var-tree; } |
||||
|
.@{fa-css-prefix}-spotify:before { content: @fa-var-spotify; } |
||||
|
.@{fa-css-prefix}-deviantart:before { content: @fa-var-deviantart; } |
||||
|
.@{fa-css-prefix}-soundcloud:before { content: @fa-var-soundcloud; } |
||||
|
.@{fa-css-prefix}-database:before { content: @fa-var-database; } |
||||
|
.@{fa-css-prefix}-file-pdf-o:before { content: @fa-var-file-pdf-o; } |
||||
|
.@{fa-css-prefix}-file-word-o:before { content: @fa-var-file-word-o; } |
||||
|
.@{fa-css-prefix}-file-excel-o:before { content: @fa-var-file-excel-o; } |
||||
|
.@{fa-css-prefix}-file-powerpoint-o:before { content: @fa-var-file-powerpoint-o; } |
||||
|
.@{fa-css-prefix}-file-photo-o:before, |
||||
|
.@{fa-css-prefix}-file-picture-o:before, |
||||
|
.@{fa-css-prefix}-file-image-o:before { content: @fa-var-file-image-o; } |
||||
|
.@{fa-css-prefix}-file-zip-o:before, |
||||
|
.@{fa-css-prefix}-file-archive-o:before { content: @fa-var-file-archive-o; } |
||||
|
.@{fa-css-prefix}-file-sound-o:before, |
||||
|
.@{fa-css-prefix}-file-audio-o:before { content: @fa-var-file-audio-o; } |
||||
|
.@{fa-css-prefix}-file-movie-o:before, |
||||
|
.@{fa-css-prefix}-file-video-o:before { content: @fa-var-file-video-o; } |
||||
|
.@{fa-css-prefix}-file-code-o:before { content: @fa-var-file-code-o; } |
||||
|
.@{fa-css-prefix}-vine:before { content: @fa-var-vine; } |
||||
|
.@{fa-css-prefix}-codepen:before { content: @fa-var-codepen; } |
||||
|
.@{fa-css-prefix}-jsfiddle:before { content: @fa-var-jsfiddle; } |
||||
|
.@{fa-css-prefix}-life-bouy:before, |
||||
|
.@{fa-css-prefix}-life-buoy:before, |
||||
|
.@{fa-css-prefix}-life-saver:before, |
||||
|
.@{fa-css-prefix}-support:before, |
||||
|
.@{fa-css-prefix}-life-ring:before { content: @fa-var-life-ring; } |
||||
|
.@{fa-css-prefix}-circle-o-notch:before { content: @fa-var-circle-o-notch; } |
||||
|
.@{fa-css-prefix}-ra:before, |
||||
|
.@{fa-css-prefix}-resistance:before, |
||||
|
.@{fa-css-prefix}-rebel:before { content: @fa-var-rebel; } |
||||
|
.@{fa-css-prefix}-ge:before, |
||||
|
.@{fa-css-prefix}-empire:before { content: @fa-var-empire; } |
||||
|
.@{fa-css-prefix}-git-square:before { content: @fa-var-git-square; } |
||||
|
.@{fa-css-prefix}-git:before { content: @fa-var-git; } |
||||
|
.@{fa-css-prefix}-y-combinator-square:before, |
||||
|
.@{fa-css-prefix}-yc-square:before, |
||||
|
.@{fa-css-prefix}-hacker-news:before { content: @fa-var-hacker-news; } |
||||
|
.@{fa-css-prefix}-tencent-weibo:before { content: @fa-var-tencent-weibo; } |
||||
|
.@{fa-css-prefix}-qq:before { content: @fa-var-qq; } |
||||
|
.@{fa-css-prefix}-wechat:before, |
||||
|
.@{fa-css-prefix}-weixin:before { content: @fa-var-weixin; } |
||||
|
.@{fa-css-prefix}-send:before, |
||||
|
.@{fa-css-prefix}-paper-plane:before { content: @fa-var-paper-plane; } |
||||
|
.@{fa-css-prefix}-send-o:before, |
||||
|
.@{fa-css-prefix}-paper-plane-o:before { content: @fa-var-paper-plane-o; } |
||||
|
.@{fa-css-prefix}-history:before { content: @fa-var-history; } |
||||
|
.@{fa-css-prefix}-circle-thin:before { content: @fa-var-circle-thin; } |
||||
|
.@{fa-css-prefix}-header:before { content: @fa-var-header; } |
||||
|
.@{fa-css-prefix}-paragraph:before { content: @fa-var-paragraph; } |
||||
|
.@{fa-css-prefix}-sliders:before { content: @fa-var-sliders; } |
||||
|
.@{fa-css-prefix}-share-alt:before { content: @fa-var-share-alt; } |
||||
|
.@{fa-css-prefix}-share-alt-square:before { content: @fa-var-share-alt-square; } |
||||
|
.@{fa-css-prefix}-bomb:before { content: @fa-var-bomb; } |
||||
|
.@{fa-css-prefix}-soccer-ball-o:before, |
||||
|
.@{fa-css-prefix}-futbol-o:before { content: @fa-var-futbol-o; } |
||||
|
.@{fa-css-prefix}-tty:before { content: @fa-var-tty; } |
||||
|
.@{fa-css-prefix}-binoculars:before { content: @fa-var-binoculars; } |
||||
|
.@{fa-css-prefix}-plug:before { content: @fa-var-plug; } |
||||
|
.@{fa-css-prefix}-slideshare:before { content: @fa-var-slideshare; } |
||||
|
.@{fa-css-prefix}-twitch:before { content: @fa-var-twitch; } |
||||
|
.@{fa-css-prefix}-yelp:before { content: @fa-var-yelp; } |
||||
|
.@{fa-css-prefix}-newspaper-o:before { content: @fa-var-newspaper-o; } |
||||
|
.@{fa-css-prefix}-wifi:before { content: @fa-var-wifi; } |
||||
|
.@{fa-css-prefix}-calculator:before { content: @fa-var-calculator; } |
||||
|
.@{fa-css-prefix}-paypal:before { content: @fa-var-paypal; } |
||||
|
.@{fa-css-prefix}-google-wallet:before { content: @fa-var-google-wallet; } |
||||
|
.@{fa-css-prefix}-cc-visa:before { content: @fa-var-cc-visa; } |
||||
|
.@{fa-css-prefix}-cc-mastercard:before { content: @fa-var-cc-mastercard; } |
||||
|
.@{fa-css-prefix}-cc-discover:before { content: @fa-var-cc-discover; } |
||||
|
.@{fa-css-prefix}-cc-amex:before { content: @fa-var-cc-amex; } |
||||
|
.@{fa-css-prefix}-cc-paypal:before { content: @fa-var-cc-paypal; } |
||||
|
.@{fa-css-prefix}-cc-stripe:before { content: @fa-var-cc-stripe; } |
||||
|
.@{fa-css-prefix}-bell-slash:before { content: @fa-var-bell-slash; } |
||||
|
.@{fa-css-prefix}-bell-slash-o:before { content: @fa-var-bell-slash-o; } |
||||
|
.@{fa-css-prefix}-trash:before { content: @fa-var-trash; } |
||||
|
.@{fa-css-prefix}-copyright:before { content: @fa-var-copyright; } |
||||
|
.@{fa-css-prefix}-at:before { content: @fa-var-at; } |
||||
|
.@{fa-css-prefix}-eyedropper:before { content: @fa-var-eyedropper; } |
||||
|
.@{fa-css-prefix}-paint-brush:before { content: @fa-var-paint-brush; } |
||||
|
.@{fa-css-prefix}-birthday-cake:before { content: @fa-var-birthday-cake; } |
||||
|
.@{fa-css-prefix}-area-chart:before { content: @fa-var-area-chart; } |
||||
|
.@{fa-css-prefix}-pie-chart:before { content: @fa-var-pie-chart; } |
||||
|
.@{fa-css-prefix}-line-chart:before { content: @fa-var-line-chart; } |
||||
|
.@{fa-css-prefix}-lastfm:before { content: @fa-var-lastfm; } |
||||
|
.@{fa-css-prefix}-lastfm-square:before { content: @fa-var-lastfm-square; } |
||||
|
.@{fa-css-prefix}-toggle-off:before { content: @fa-var-toggle-off; } |
||||
|
.@{fa-css-prefix}-toggle-on:before { content: @fa-var-toggle-on; } |
||||
|
.@{fa-css-prefix}-bicycle:before { content: @fa-var-bicycle; } |
||||
|
.@{fa-css-prefix}-bus:before { content: @fa-var-bus; } |
||||
|
.@{fa-css-prefix}-ioxhost:before { content: @fa-var-ioxhost; } |
||||
|
.@{fa-css-prefix}-angellist:before { content: @fa-var-angellist; } |
||||
|
.@{fa-css-prefix}-cc:before { content: @fa-var-cc; } |
||||
|
.@{fa-css-prefix}-shekel:before, |
||||
|
.@{fa-css-prefix}-sheqel:before, |
||||
|
.@{fa-css-prefix}-ils:before { content: @fa-var-ils; } |
||||
|
.@{fa-css-prefix}-meanpath:before { content: @fa-var-meanpath; } |
||||
|
.@{fa-css-prefix}-buysellads:before { content: @fa-var-buysellads; } |
||||
|
.@{fa-css-prefix}-connectdevelop:before { content: @fa-var-connectdevelop; } |
||||
|
.@{fa-css-prefix}-dashcube:before { content: @fa-var-dashcube; } |
||||
|
.@{fa-css-prefix}-forumbee:before { content: @fa-var-forumbee; } |
||||
|
.@{fa-css-prefix}-leanpub:before { content: @fa-var-leanpub; } |
||||
|
.@{fa-css-prefix}-sellsy:before { content: @fa-var-sellsy; } |
||||
|
.@{fa-css-prefix}-shirtsinbulk:before { content: @fa-var-shirtsinbulk; } |
||||
|
.@{fa-css-prefix}-simplybuilt:before { content: @fa-var-simplybuilt; } |
||||
|
.@{fa-css-prefix}-skyatlas:before { content: @fa-var-skyatlas; } |
||||
|
.@{fa-css-prefix}-cart-plus:before { content: @fa-var-cart-plus; } |
||||
|
.@{fa-css-prefix}-cart-arrow-down:before { content: @fa-var-cart-arrow-down; } |
||||
|
.@{fa-css-prefix}-diamond:before { content: @fa-var-diamond; } |
||||
|
.@{fa-css-prefix}-ship:before { content: @fa-var-ship; } |
||||
|
.@{fa-css-prefix}-user-secret:before { content: @fa-var-user-secret; } |
||||
|
.@{fa-css-prefix}-motorcycle:before { content: @fa-var-motorcycle; } |
||||
|
.@{fa-css-prefix}-street-view:before { content: @fa-var-street-view; } |
||||
|
.@{fa-css-prefix}-heartbeat:before { content: @fa-var-heartbeat; } |
||||
|
.@{fa-css-prefix}-venus:before { content: @fa-var-venus; } |
||||
|
.@{fa-css-prefix}-mars:before { content: @fa-var-mars; } |
||||
|
.@{fa-css-prefix}-mercury:before { content: @fa-var-mercury; } |
||||
|
.@{fa-css-prefix}-intersex:before, |
||||
|
.@{fa-css-prefix}-transgender:before { content: @fa-var-transgender; } |
||||
|
.@{fa-css-prefix}-transgender-alt:before { content: @fa-var-transgender-alt; } |
||||
|
.@{fa-css-prefix}-venus-double:before { content: @fa-var-venus-double; } |
||||
|
.@{fa-css-prefix}-mars-double:before { content: @fa-var-mars-double; } |
||||
|
.@{fa-css-prefix}-venus-mars:before { content: @fa-var-venus-mars; } |
||||
|
.@{fa-css-prefix}-mars-stroke:before { content: @fa-var-mars-stroke; } |
||||
|
.@{fa-css-prefix}-mars-stroke-v:before { content: @fa-var-mars-stroke-v; } |
||||
|
.@{fa-css-prefix}-mars-stroke-h:before { content: @fa-var-mars-stroke-h; } |
||||
|
.@{fa-css-prefix}-neuter:before { content: @fa-var-neuter; } |
||||
|
.@{fa-css-prefix}-genderless:before { content: @fa-var-genderless; } |
||||
|
.@{fa-css-prefix}-facebook-official:before { content: @fa-var-facebook-official; } |
||||
|
.@{fa-css-prefix}-pinterest-p:before { content: @fa-var-pinterest-p; } |
||||
|
.@{fa-css-prefix}-whatsapp:before { content: @fa-var-whatsapp; } |
||||
|
.@{fa-css-prefix}-server:before { content: @fa-var-server; } |
||||
|
.@{fa-css-prefix}-user-plus:before { content: @fa-var-user-plus; } |
||||
|
.@{fa-css-prefix}-user-times:before { content: @fa-var-user-times; } |
||||
|
.@{fa-css-prefix}-hotel:before, |
||||
|
.@{fa-css-prefix}-bed:before { content: @fa-var-bed; } |
||||
|
.@{fa-css-prefix}-viacoin:before { content: @fa-var-viacoin; } |
||||
|
.@{fa-css-prefix}-train:before { content: @fa-var-train; } |
||||
|
.@{fa-css-prefix}-subway:before { content: @fa-var-subway; } |
||||
|
.@{fa-css-prefix}-medium:before { content: @fa-var-medium; } |
||||
|
.@{fa-css-prefix}-yc:before, |
||||
|
.@{fa-css-prefix}-y-combinator:before { content: @fa-var-y-combinator; } |
||||
|
.@{fa-css-prefix}-optin-monster:before { content: @fa-var-optin-monster; } |
||||
|
.@{fa-css-prefix}-opencart:before { content: @fa-var-opencart; } |
||||
|
.@{fa-css-prefix}-expeditedssl:before { content: @fa-var-expeditedssl; } |
||||
|
.@{fa-css-prefix}-battery-4:before, |
||||
|
.@{fa-css-prefix}-battery:before, |
||||
|
.@{fa-css-prefix}-battery-full:before { content: @fa-var-battery-full; } |
||||
|
.@{fa-css-prefix}-battery-3:before, |
||||
|
.@{fa-css-prefix}-battery-three-quarters:before { content: @fa-var-battery-three-quarters; } |
||||
|
.@{fa-css-prefix}-battery-2:before, |
||||
|
.@{fa-css-prefix}-battery-half:before { content: @fa-var-battery-half; } |
||||
|
.@{fa-css-prefix}-battery-1:before, |
||||
|
.@{fa-css-prefix}-battery-quarter:before { content: @fa-var-battery-quarter; } |
||||
|
.@{fa-css-prefix}-battery-0:before, |
||||
|
.@{fa-css-prefix}-battery-empty:before { content: @fa-var-battery-empty; } |
||||
|
.@{fa-css-prefix}-mouse-pointer:before { content: @fa-var-mouse-pointer; } |
||||
|
.@{fa-css-prefix}-i-cursor:before { content: @fa-var-i-cursor; } |
||||
|
.@{fa-css-prefix}-object-group:before { content: @fa-var-object-group; } |
||||
|
.@{fa-css-prefix}-object-ungroup:before { content: @fa-var-object-ungroup; } |
||||
|
.@{fa-css-prefix}-sticky-note:before { content: @fa-var-sticky-note; } |
||||
|
.@{fa-css-prefix}-sticky-note-o:before { content: @fa-var-sticky-note-o; } |
||||
|
.@{fa-css-prefix}-cc-jcb:before { content: @fa-var-cc-jcb; } |
||||
|
.@{fa-css-prefix}-cc-diners-club:before { content: @fa-var-cc-diners-club; } |
||||
|
.@{fa-css-prefix}-clone:before { content: @fa-var-clone; } |
||||
|
.@{fa-css-prefix}-balance-scale:before { content: @fa-var-balance-scale; } |
||||
|
.@{fa-css-prefix}-hourglass-o:before { content: @fa-var-hourglass-o; } |
||||
|
.@{fa-css-prefix}-hourglass-1:before, |
||||
|
.@{fa-css-prefix}-hourglass-start:before { content: @fa-var-hourglass-start; } |
||||
|
.@{fa-css-prefix}-hourglass-2:before, |
||||
|
.@{fa-css-prefix}-hourglass-half:before { content: @fa-var-hourglass-half; } |
||||
|
.@{fa-css-prefix}-hourglass-3:before, |
||||
|
.@{fa-css-prefix}-hourglass-end:before { content: @fa-var-hourglass-end; } |
||||
|
.@{fa-css-prefix}-hourglass:before { content: @fa-var-hourglass; } |
||||
|
.@{fa-css-prefix}-hand-grab-o:before, |
||||
|
.@{fa-css-prefix}-hand-rock-o:before { content: @fa-var-hand-rock-o; } |
||||
|
.@{fa-css-prefix}-hand-stop-o:before, |
||||
|
.@{fa-css-prefix}-hand-paper-o:before { content: @fa-var-hand-paper-o; } |
||||
|
.@{fa-css-prefix}-hand-scissors-o:before { content: @fa-var-hand-scissors-o; } |
||||
|
.@{fa-css-prefix}-hand-lizard-o:before { content: @fa-var-hand-lizard-o; } |
||||
|
.@{fa-css-prefix}-hand-spock-o:before { content: @fa-var-hand-spock-o; } |
||||
|
.@{fa-css-prefix}-hand-pointer-o:before { content: @fa-var-hand-pointer-o; } |
||||
|
.@{fa-css-prefix}-hand-peace-o:before { content: @fa-var-hand-peace-o; } |
||||
|
.@{fa-css-prefix}-trademark:before { content: @fa-var-trademark; } |
||||
|
.@{fa-css-prefix}-registered:before { content: @fa-var-registered; } |
||||
|
.@{fa-css-prefix}-creative-commons:before { content: @fa-var-creative-commons; } |
||||
|
.@{fa-css-prefix}-gg:before { content: @fa-var-gg; } |
||||
|
.@{fa-css-prefix}-gg-circle:before { content: @fa-var-gg-circle; } |
||||
|
.@{fa-css-prefix}-tripadvisor:before { content: @fa-var-tripadvisor; } |
||||
|
.@{fa-css-prefix}-odnoklassniki:before { content: @fa-var-odnoklassniki; } |
||||
|
.@{fa-css-prefix}-odnoklassniki-square:before { content: @fa-var-odnoklassniki-square; } |
||||
|
.@{fa-css-prefix}-get-pocket:before { content: @fa-var-get-pocket; } |
||||
|
.@{fa-css-prefix}-wikipedia-w:before { content: @fa-var-wikipedia-w; } |
||||
|
.@{fa-css-prefix}-safari:before { content: @fa-var-safari; } |
||||
|
.@{fa-css-prefix}-chrome:before { content: @fa-var-chrome; } |
||||
|
.@{fa-css-prefix}-firefox:before { content: @fa-var-firefox; } |
||||
|
.@{fa-css-prefix}-opera:before { content: @fa-var-opera; } |
||||
|
.@{fa-css-prefix}-internet-explorer:before { content: @fa-var-internet-explorer; } |
||||
|
.@{fa-css-prefix}-tv:before, |
||||
|
.@{fa-css-prefix}-television:before { content: @fa-var-television; } |
||||
|
.@{fa-css-prefix}-contao:before { content: @fa-var-contao; } |
||||
|
.@{fa-css-prefix}-500px:before { content: @fa-var-500px; } |
||||
|
.@{fa-css-prefix}-amazon:before { content: @fa-var-amazon; } |
||||
|
.@{fa-css-prefix}-calendar-plus-o:before { content: @fa-var-calendar-plus-o; } |
||||
|
.@{fa-css-prefix}-calendar-minus-o:before { content: @fa-var-calendar-minus-o; } |
||||
|
.@{fa-css-prefix}-calendar-times-o:before { content: @fa-var-calendar-times-o; } |
||||
|
.@{fa-css-prefix}-calendar-check-o:before { content: @fa-var-calendar-check-o; } |
||||
|
.@{fa-css-prefix}-industry:before { content: @fa-var-industry; } |
||||
|
.@{fa-css-prefix}-map-pin:before { content: @fa-var-map-pin; } |
||||
|
.@{fa-css-prefix}-map-signs:before { content: @fa-var-map-signs; } |
||||
|
.@{fa-css-prefix}-map-o:before { content: @fa-var-map-o; } |
||||
|
.@{fa-css-prefix}-map:before { content: @fa-var-map; } |
||||
|
.@{fa-css-prefix}-commenting:before { content: @fa-var-commenting; } |
||||
|
.@{fa-css-prefix}-commenting-o:before { content: @fa-var-commenting-o; } |
||||
|
.@{fa-css-prefix}-houzz:before { content: @fa-var-houzz; } |
||||
|
.@{fa-css-prefix}-vimeo:before { content: @fa-var-vimeo; } |
||||
|
.@{fa-css-prefix}-black-tie:before { content: @fa-var-black-tie; } |
||||
|
.@{fa-css-prefix}-fonticons:before { content: @fa-var-fonticons; } |
||||
|
.@{fa-css-prefix}-reddit-alien:before { content: @fa-var-reddit-alien; } |
||||
|
.@{fa-css-prefix}-edge:before { content: @fa-var-edge; } |
||||
|
.@{fa-css-prefix}-credit-card-alt:before { content: @fa-var-credit-card-alt; } |
||||
|
.@{fa-css-prefix}-codiepie:before { content: @fa-var-codiepie; } |
||||
|
.@{fa-css-prefix}-modx:before { content: @fa-var-modx; } |
||||
|
.@{fa-css-prefix}-fort-awesome:before { content: @fa-var-fort-awesome; } |
||||
|
.@{fa-css-prefix}-usb:before { content: @fa-var-usb; } |
||||
|
.@{fa-css-prefix}-product-hunt:before { content: @fa-var-product-hunt; } |
||||
|
.@{fa-css-prefix}-mixcloud:before { content: @fa-var-mixcloud; } |
||||
|
.@{fa-css-prefix}-scribd:before { content: @fa-var-scribd; } |
||||
|
.@{fa-css-prefix}-pause-circle:before { content: @fa-var-pause-circle; } |
||||
|
.@{fa-css-prefix}-pause-circle-o:before { content: @fa-var-pause-circle-o; } |
||||
|
.@{fa-css-prefix}-stop-circle:before { content: @fa-var-stop-circle; } |
||||
|
.@{fa-css-prefix}-stop-circle-o:before { content: @fa-var-stop-circle-o; } |
||||
|
.@{fa-css-prefix}-shopping-bag:before { content: @fa-var-shopping-bag; } |
||||
|
.@{fa-css-prefix}-shopping-basket:before { content: @fa-var-shopping-basket; } |
||||
|
.@{fa-css-prefix}-hashtag:before { content: @fa-var-hashtag; } |
||||
|
.@{fa-css-prefix}-bluetooth:before { content: @fa-var-bluetooth; } |
||||
|
.@{fa-css-prefix}-bluetooth-b:before { content: @fa-var-bluetooth-b; } |
||||
|
.@{fa-css-prefix}-percent:before { content: @fa-var-percent; } |
||||
|
.@{fa-css-prefix}-gitlab:before { content: @fa-var-gitlab; } |
||||
|
.@{fa-css-prefix}-wpbeginner:before { content: @fa-var-wpbeginner; } |
||||
|
.@{fa-css-prefix}-wpforms:before { content: @fa-var-wpforms; } |
||||
|
.@{fa-css-prefix}-envira:before { content: @fa-var-envira; } |
||||
|
.@{fa-css-prefix}-universal-access:before { content: @fa-var-universal-access; } |
||||
|
.@{fa-css-prefix}-wheelchair-alt:before { content: @fa-var-wheelchair-alt; } |
||||
|
.@{fa-css-prefix}-question-circle-o:before { content: @fa-var-question-circle-o; } |
||||
|
.@{fa-css-prefix}-blind:before { content: @fa-var-blind; } |
||||
|
.@{fa-css-prefix}-audio-description:before { content: @fa-var-audio-description; } |
||||
|
.@{fa-css-prefix}-volume-control-phone:before { content: @fa-var-volume-control-phone; } |
||||
|
.@{fa-css-prefix}-braille:before { content: @fa-var-braille; } |
||||
|
.@{fa-css-prefix}-assistive-listening-systems:before { content: @fa-var-assistive-listening-systems; } |
||||
|
.@{fa-css-prefix}-asl-interpreting:before, |
||||
|
.@{fa-css-prefix}-american-sign-language-interpreting:before { content: @fa-var-american-sign-language-interpreting; } |
||||
|
.@{fa-css-prefix}-deafness:before, |
||||
|
.@{fa-css-prefix}-hard-of-hearing:before, |
||||
|
.@{fa-css-prefix}-deaf:before { content: @fa-var-deaf; } |
||||
|
.@{fa-css-prefix}-glide:before { content: @fa-var-glide; } |
||||
|
.@{fa-css-prefix}-glide-g:before { content: @fa-var-glide-g; } |
||||
|
.@{fa-css-prefix}-signing:before, |
||||
|
.@{fa-css-prefix}-sign-language:before { content: @fa-var-sign-language; } |
||||
|
.@{fa-css-prefix}-low-vision:before { content: @fa-var-low-vision; } |
||||
|
.@{fa-css-prefix}-viadeo:before { content: @fa-var-viadeo; } |
||||
|
.@{fa-css-prefix}-viadeo-square:before { content: @fa-var-viadeo-square; } |
||||
|
.@{fa-css-prefix}-snapchat:before { content: @fa-var-snapchat; } |
||||
|
.@{fa-css-prefix}-snapchat-ghost:before { content: @fa-var-snapchat-ghost; } |
||||
|
.@{fa-css-prefix}-snapchat-square:before { content: @fa-var-snapchat-square; } |
||||
|
.@{fa-css-prefix}-pied-piper:before { content: @fa-var-pied-piper; } |
||||
|
.@{fa-css-prefix}-first-order:before { content: @fa-var-first-order; } |
||||
|
.@{fa-css-prefix}-yoast:before { content: @fa-var-yoast; } |
||||
|
.@{fa-css-prefix}-themeisle:before { content: @fa-var-themeisle; } |
||||
|
.@{fa-css-prefix}-google-plus-circle:before, |
||||
|
.@{fa-css-prefix}-google-plus-official:before { content: @fa-var-google-plus-official; } |
||||
|
.@{fa-css-prefix}-fa:before, |
||||
|
.@{fa-css-prefix}-font-awesome:before { content: @fa-var-font-awesome; } |
||||
|
.@{fa-css-prefix}-handshake-o:before { content: @fa-var-handshake-o; } |
||||
|
.@{fa-css-prefix}-envelope-open:before { content: @fa-var-envelope-open; } |
||||
|
.@{fa-css-prefix}-envelope-open-o:before { content: @fa-var-envelope-open-o; } |
||||
|
.@{fa-css-prefix}-linode:before { content: @fa-var-linode; } |
||||
|
.@{fa-css-prefix}-address-book:before { content: @fa-var-address-book; } |
||||
|
.@{fa-css-prefix}-address-book-o:before { content: @fa-var-address-book-o; } |
||||
|
.@{fa-css-prefix}-vcard:before, |
||||
|
.@{fa-css-prefix}-address-card:before { content: @fa-var-address-card; } |
||||
|
.@{fa-css-prefix}-vcard-o:before, |
||||
|
.@{fa-css-prefix}-address-card-o:before { content: @fa-var-address-card-o; } |
||||
|
.@{fa-css-prefix}-user-circle:before { content: @fa-var-user-circle; } |
||||
|
.@{fa-css-prefix}-user-circle-o:before { content: @fa-var-user-circle-o; } |
||||
|
.@{fa-css-prefix}-user-o:before { content: @fa-var-user-o; } |
||||
|
.@{fa-css-prefix}-id-badge:before { content: @fa-var-id-badge; } |
||||
|
.@{fa-css-prefix}-drivers-license:before, |
||||
|
.@{fa-css-prefix}-id-card:before { content: @fa-var-id-card; } |
||||
|
.@{fa-css-prefix}-drivers-license-o:before, |
||||
|
.@{fa-css-prefix}-id-card-o:before { content: @fa-var-id-card-o; } |
||||
|
.@{fa-css-prefix}-quora:before { content: @fa-var-quora; } |
||||
|
.@{fa-css-prefix}-free-code-camp:before { content: @fa-var-free-code-camp; } |
||||
|
.@{fa-css-prefix}-telegram:before { content: @fa-var-telegram; } |
||||
|
.@{fa-css-prefix}-thermometer-4:before, |
||||
|
.@{fa-css-prefix}-thermometer:before, |
||||
|
.@{fa-css-prefix}-thermometer-full:before { content: @fa-var-thermometer-full; } |
||||
|
.@{fa-css-prefix}-thermometer-3:before, |
||||
|
.@{fa-css-prefix}-thermometer-three-quarters:before { content: @fa-var-thermometer-three-quarters; } |
||||
|
.@{fa-css-prefix}-thermometer-2:before, |
||||
|
.@{fa-css-prefix}-thermometer-half:before { content: @fa-var-thermometer-half; } |
||||
|
.@{fa-css-prefix}-thermometer-1:before, |
||||
|
.@{fa-css-prefix}-thermometer-quarter:before { content: @fa-var-thermometer-quarter; } |
||||
|
.@{fa-css-prefix}-thermometer-0:before, |
||||
|
.@{fa-css-prefix}-thermometer-empty:before { content: @fa-var-thermometer-empty; } |
||||
|
.@{fa-css-prefix}-shower:before { content: @fa-var-shower; } |
||||
|
.@{fa-css-prefix}-bathtub:before, |
||||
|
.@{fa-css-prefix}-s15:before, |
||||
|
.@{fa-css-prefix}-bath:before { content: @fa-var-bath; } |
||||
|
.@{fa-css-prefix}-podcast:before { content: @fa-var-podcast; } |
||||
|
.@{fa-css-prefix}-window-maximize:before { content: @fa-var-window-maximize; } |
||||
|
.@{fa-css-prefix}-window-minimize:before { content: @fa-var-window-minimize; } |
||||
|
.@{fa-css-prefix}-window-restore:before { content: @fa-var-window-restore; } |
||||
|
.@{fa-css-prefix}-times-rectangle:before, |
||||
|
.@{fa-css-prefix}-window-close:before { content: @fa-var-window-close; } |
||||
|
.@{fa-css-prefix}-times-rectangle-o:before, |
||||
|
.@{fa-css-prefix}-window-close-o:before { content: @fa-var-window-close-o; } |
||||
|
.@{fa-css-prefix}-bandcamp:before { content: @fa-var-bandcamp; } |
||||
|
.@{fa-css-prefix}-grav:before { content: @fa-var-grav; } |
||||
|
.@{fa-css-prefix}-etsy:before { content: @fa-var-etsy; } |
||||
|
.@{fa-css-prefix}-imdb:before { content: @fa-var-imdb; } |
||||
|
.@{fa-css-prefix}-ravelry:before { content: @fa-var-ravelry; } |
||||
|
.@{fa-css-prefix}-eercast:before { content: @fa-var-eercast; } |
||||
|
.@{fa-css-prefix}-microchip:before { content: @fa-var-microchip; } |
||||
|
.@{fa-css-prefix}-snowflake-o:before { content: @fa-var-snowflake-o; } |
||||
|
.@{fa-css-prefix}-superpowers:before { content: @fa-var-superpowers; } |
||||
|
.@{fa-css-prefix}-wpexplorer:before { content: @fa-var-wpexplorer; } |
||||
|
.@{fa-css-prefix}-meetup:before { content: @fa-var-meetup; } |
||||
@ -0,0 +1,13 @@ |
|||||
|
// Icon Sizes |
||||
|
// ------------------------- |
||||
|
|
||||
|
/* makes the font 33% larger relative to the icon container */ |
||||
|
.@{fa-css-prefix}-lg { |
||||
|
font-size: (4em / 3); |
||||
|
line-height: (3em / 4); |
||||
|
vertical-align: -15%; |
||||
|
} |
||||
|
.@{fa-css-prefix}-2x { font-size: 2em; } |
||||
|
.@{fa-css-prefix}-3x { font-size: 3em; } |
||||
|
.@{fa-css-prefix}-4x { font-size: 4em; } |
||||
|
.@{fa-css-prefix}-5x { font-size: 5em; } |
||||
@ -0,0 +1,19 @@ |
|||||
|
// List Icons |
||||
|
// ------------------------- |
||||
|
|
||||
|
.@{fa-css-prefix}-ul { |
||||
|
padding-left: 0; |
||||
|
margin-left: @fa-li-width; |
||||
|
list-style-type: none; |
||||
|
> li { position: relative; } |
||||
|
} |
||||
|
.@{fa-css-prefix}-li { |
||||
|
position: absolute; |
||||
|
left: -@fa-li-width; |
||||
|
width: @fa-li-width; |
||||
|
top: (2em / 14); |
||||
|
text-align: center; |
||||
|
&.@{fa-css-prefix}-lg { |
||||
|
left: (-@fa-li-width + (4em / 14)); |
||||
|
} |
||||
|
} |
||||
Some files were not shown because too many files changed in this diff
Loading…
Reference in new issue