diff --git a/src/Volo.Abp.Identity.EntityFrameworkCore/Migrations/20170123193838_Fix_IdentityUserRole_UserId_Nav_Property.Designer.cs b/src/Volo.Abp.Identity.EntityFrameworkCore/Migrations/20170123193838_Fix_IdentityUserRole_UserId_Nav_Property.Designer.cs new file mode 100644 index 0000000000..de69569235 --- /dev/null +++ b/src/Volo.Abp.Identity.EntityFrameworkCore/Migrations/20170123193838_Fix_IdentityUserRole_UserId_Nav_Property.Designer.cs @@ -0,0 +1,253 @@ +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Volo.Abp.Identity.EntityFrameworkCore; + +namespace Volo.Abp.Identity.EntityFrameworkCore.Migrations +{ + [DbContext(typeof(IdentityDbContext))] + [Migration("20170123193838_Fix_IdentityUserRole_UserId_Nav_Property")] + partial class Fix_IdentityUserRole_UserId_Nav_Property + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { + modelBuilder + .HasAnnotation("ProductVersion", "1.1.0-rtm-22752") + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + modelBuilder.Entity("Volo.Abp.Identity.IdentityRole", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("ConcurrencyStamp") + .IsConcurrencyToken(); + + b.Property("Name") + .HasMaxLength(256); + + b.Property("NormalizedName") + .HasMaxLength(256); + + b.HasKey("Id"); + + b.HasIndex("NormalizedName"); + + b.ToTable("IdentityRoles"); + }); + + modelBuilder.Entity("Volo.Abp.Identity.IdentityRoleClaim", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("ClaimType") + .IsRequired() + .HasMaxLength(256); + + b.Property("ClaimValue") + .HasMaxLength(1024); + + b.Property("RoleId"); + + b.HasKey("Id"); + + b.HasIndex("RoleId"); + + b.ToTable("IdentityRoleClaims"); + }); + + modelBuilder.Entity("Volo.Abp.Identity.IdentityUser", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("AccessFailedCount") + .ValueGeneratedOnAdd() + .HasDefaultValue(0); + + b.Property("ConcurrencyStamp") + .IsConcurrencyToken(); + + b.Property("Email") + .HasMaxLength(256); + + b.Property("EmailConfirmed") + .ValueGeneratedOnAdd() + .HasDefaultValue(false); + + b.Property("LockoutEnabled") + .ValueGeneratedOnAdd() + .HasDefaultValue(false); + + b.Property("LockoutEnd"); + + b.Property("NormalizedEmail") + .HasMaxLength(256); + + b.Property("NormalizedUserName") + .HasMaxLength(256); + + b.Property("PasswordHash"); + + b.Property("PhoneNumber"); + + b.Property("PhoneNumberConfirmed") + .ValueGeneratedOnAdd() + .HasDefaultValue(false); + + b.Property("SecurityStamp"); + + b.Property("TwoFactorEnabled") + .ValueGeneratedOnAdd() + .HasDefaultValue(false); + + b.Property("UserName") + .HasMaxLength(256); + + b.HasKey("Id"); + + b.HasIndex("NormalizedEmail"); + + b.HasIndex("NormalizedUserName"); + + b.ToTable("IdentityUsers"); + }); + + modelBuilder.Entity("Volo.Abp.Identity.IdentityUserClaim", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("ClaimType") + .IsRequired() + .HasMaxLength(256); + + b.Property("ClaimValue") + .HasMaxLength(1024); + + b.Property("UserId"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("IdentityUserClaims"); + }); + + modelBuilder.Entity("Volo.Abp.Identity.IdentityUserLogin", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("LoginProvider") + .IsRequired() + .HasMaxLength(64); + + b.Property("ProviderDisplayName") + .HasMaxLength(128); + + b.Property("ProviderKey") + .IsRequired() + .HasMaxLength(256); + + b.Property("UserId"); + + b.HasKey("Id"); + + b.HasIndex("LoginProvider", "ProviderKey"); + + b.HasIndex("UserId", "LoginProvider", "ProviderKey"); + + b.ToTable("IdentityUserLogins"); + }); + + modelBuilder.Entity("Volo.Abp.Identity.IdentityUserRole", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("RoleId"); + + b.Property("UserId"); + + b.HasKey("Id"); + + b.HasIndex("RoleId", "UserId"); + + b.HasIndex("UserId", "RoleId"); + + b.ToTable("IdentityUserRoles"); + }); + + modelBuilder.Entity("Volo.Abp.Identity.IdentityUserToken", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("LoginProvider") + .IsRequired() + .HasMaxLength(64); + + b.Property("Name"); + + b.Property("UserId"); + + b.Property("Value"); + + b.HasKey("Id"); + + b.HasIndex("UserId", "LoginProvider", "Name"); + + b.ToTable("IdentityUserTokens"); + }); + + 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); + }); + } + } +} diff --git a/src/Volo.Abp.Identity.EntityFrameworkCore/Migrations/20170123193838_Fix_IdentityUserRole_UserId_Nav_Property.cs b/src/Volo.Abp.Identity.EntityFrameworkCore/Migrations/20170123193838_Fix_IdentityUserRole_UserId_Nav_Property.cs new file mode 100644 index 0000000000..57ad8e0e32 --- /dev/null +++ b/src/Volo.Abp.Identity.EntityFrameworkCore/Migrations/20170123193838_Fix_IdentityUserRole_UserId_Nav_Property.cs @@ -0,0 +1,45 @@ +using System; +using System.Collections.Generic; +using Microsoft.EntityFrameworkCore.Migrations; + +namespace Volo.Abp.Identity.EntityFrameworkCore.Migrations +{ + public partial class Fix_IdentityUserRole_UserId_Nav_Property : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_IdentityUserRoles_IdentityUsers_IdentityUserId1", + table: "IdentityUserRoles"); + + migrationBuilder.DropIndex( + name: "IX_IdentityUserRoles_IdentityUserId1", + table: "IdentityUserRoles"); + + migrationBuilder.DropColumn( + name: "IdentityUserId1", + table: "IdentityUserRoles"); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn( + name: "IdentityUserId1", + table: "IdentityUserRoles", + nullable: true); + + migrationBuilder.CreateIndex( + name: "IX_IdentityUserRoles_IdentityUserId1", + table: "IdentityUserRoles", + column: "IdentityUserId1"); + + migrationBuilder.AddForeignKey( + name: "FK_IdentityUserRoles_IdentityUsers_IdentityUserId1", + table: "IdentityUserRoles", + column: "IdentityUserId1", + principalTable: "IdentityUsers", + principalColumn: "Id", + onDelete: ReferentialAction.Restrict); + } + } +} diff --git a/src/Volo.Abp.Identity.EntityFrameworkCore/Migrations/IdentityDbContextModelSnapshot.cs b/src/Volo.Abp.Identity.EntityFrameworkCore/Migrations/IdentityDbContextModelSnapshot.cs index dbb50e9b1f..b5acad6a5b 100644 --- a/src/Volo.Abp.Identity.EntityFrameworkCore/Migrations/IdentityDbContextModelSnapshot.cs +++ b/src/Volo.Abp.Identity.EntityFrameworkCore/Migrations/IdentityDbContextModelSnapshot.cs @@ -168,16 +168,12 @@ namespace Volo.Abp.Identity.EntityFrameworkCore.Migrations b.Property("Id") .ValueGeneratedOnAdd(); - b.Property("IdentityUserId1"); - b.Property("RoleId"); b.Property("UserId"); b.HasKey("Id"); - b.HasIndex("IdentityUserId1"); - b.HasIndex("RoleId", "UserId"); b.HasIndex("UserId", "RoleId"); @@ -233,17 +229,13 @@ namespace Volo.Abp.Identity.EntityFrameworkCore.Migrations modelBuilder.Entity("Volo.Abp.Identity.IdentityUserRole", b => { - b.HasOne("Volo.Abp.Identity.IdentityUser") - .WithMany("Roles") - .HasForeignKey("IdentityUserId1"); - b.HasOne("Volo.Abp.Identity.IdentityRole") .WithMany() .HasForeignKey("RoleId") .OnDelete(DeleteBehavior.Cascade); b.HasOne("Volo.Abp.Identity.IdentityUser") - .WithMany() + .WithMany("Roles") .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade); }); diff --git a/src/Volo.Abp.Identity.EntityFrameworkCore/Volo/Abp/Identity/EntityFrameworkCore/IdentityDbContext.cs b/src/Volo.Abp.Identity.EntityFrameworkCore/Volo/Abp/Identity/EntityFrameworkCore/IdentityDbContext.cs index d70c7f9254..c933fbbb9b 100644 --- a/src/Volo.Abp.Identity.EntityFrameworkCore/Volo/Abp/Identity/EntityFrameworkCore/IdentityDbContext.cs +++ b/src/Volo.Abp.Identity.EntityFrameworkCore/Volo/Abp/Identity/EntityFrameworkCore/IdentityDbContext.cs @@ -125,7 +125,7 @@ namespace Volo.Abp.Identity.EntityFrameworkCore b.ToTable("IdentityUserRoles"); b.HasOne().WithMany().HasForeignKey(ur => ur.RoleId).IsRequired(); - b.HasOne().WithMany().HasForeignKey(ur => ur.UserId).IsRequired(); + b.HasOne().WithMany(u => u.Roles).HasForeignKey(ur => ur.UserId).IsRequired(); b.HasIndex(r => new { r.UserId, r.RoleId }); b.HasIndex(r => new { r.RoleId, r.UserId });