Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
L
Lesson49
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
2
Issues
2
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Пасько Виталий
Lesson49
Commits
6f14ab8c
Commit
6f14ab8c
authored
Jul 21, 2022
by
Пасько Виталий
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Добавил миграции в индексацию.
parent
64522670
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
944 additions
and
0 deletions
+944
-0
20220721214239_AddIdentityUserWithRoles.Designer.cs
...tions/20220721214239_AddIdentityUserWithRoles.Designer.cs
+201
-0
20220721214239_AddIdentityUserWithRoles.cs
...ore/Migrations/20220721214239_AddIdentityUserWithRoles.cs
+46
-0
20220721215303_Changeinheritance.Designer.cs
...e/Migrations/20220721215303_Changeinheritance.Designer.cs
+393
-0
20220721215303_Changeinheritance.cs
PhoneStore/Migrations/20220721215303_Changeinheritance.cs
+304
-0
No files found.
PhoneStore/Migrations/20220721214239_AddIdentityUserWithRoles.Designer.cs
0 → 100644
View file @
6f14ab8c
// <auto-generated />
using
System
;
using
Microsoft.EntityFrameworkCore
;
using
Microsoft.EntityFrameworkCore.Infrastructure
;
using
Microsoft.EntityFrameworkCore.Migrations
;
using
Microsoft.EntityFrameworkCore.Storage.ValueConversion
;
using
Npgsql.EntityFrameworkCore.PostgreSQL.Metadata
;
using
PhoneStore.Models
;
namespace
PhoneStore.Migrations
{
[
DbContext
(
typeof
(
MobileContext
))]
[
Migration
(
"20220721214239_AddIdentityUserWithRoles"
)]
partial
class
AddIdentityUserWithRoles
{
protected
override
void
BuildTargetModel
(
ModelBuilder
modelBuilder
)
{
#pragma warning disable 612, 618
modelBuilder
.
HasAnnotation
(
"Relational:MaxIdentifierLength"
,
63
)
.
HasAnnotation
(
"ProductVersion"
,
"5.0.17"
)
.
HasAnnotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
);
modelBuilder
.
Entity
(
"PhoneStore.Models.Basket"
,
b
=>
{
b
.
Property
<
int
>(
"Id"
)
.
ValueGeneratedOnAdd
()
.
HasColumnType
(
"integer"
)
.
HasAnnotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
);
b
.
Property
<
int
>(
"PhoneId"
)
.
HasColumnType
(
"integer"
);
b
.
HasKey
(
"Id"
);
b
.
HasIndex
(
"PhoneId"
);
b
.
ToTable
(
"Baskets"
);
});
modelBuilder
.
Entity
(
"PhoneStore.Models.Brand"
,
b
=>
{
b
.
Property
<
int
>(
"Id"
)
.
ValueGeneratedOnAdd
()
.
HasColumnType
(
"integer"
)
.
HasAnnotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
);
b
.
Property
<
string
>(
"Name"
)
.
HasColumnType
(
"text"
);
b
.
HasKey
(
"Id"
);
b
.
ToTable
(
"Brands"
);
});
modelBuilder
.
Entity
(
"PhoneStore.Models.Order"
,
b
=>
{
b
.
Property
<
int
>(
"Id"
)
.
ValueGeneratedOnAdd
()
.
HasColumnType
(
"integer"
)
.
HasAnnotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
);
b
.
Property
<
string
>(
"Address"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"ContactPhone"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
int
>(
"PhoneId"
)
.
HasColumnType
(
"integer"
);
b
.
Property
<
string
>(
"UserName"
)
.
HasColumnType
(
"text"
);
b
.
HasKey
(
"Id"
);
b
.
HasIndex
(
"PhoneId"
);
b
.
ToTable
(
"Orders"
);
});
modelBuilder
.
Entity
(
"PhoneStore.Models.Phone"
,
b
=>
{
b
.
Property
<
int
>(
"Id"
)
.
ValueGeneratedOnAdd
()
.
HasColumnType
(
"integer"
)
.
HasAnnotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
);
b
.
Property
<
int
?>(
"BrandId"
)
.
HasColumnType
(
"integer"
);
b
.
Property
<
string
>(
"Image"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"Name"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
decimal
>(
"Price"
)
.
HasColumnType
(
"numeric"
);
b
.
HasKey
(
"Id"
);
b
.
HasIndex
(
"BrandId"
);
b
.
ToTable
(
"Phones"
);
});
modelBuilder
.
Entity
(
"PhoneStore.Models.User"
,
b
=>
{
b
.
Property
<
int
>(
"Id"
)
.
ValueGeneratedOnAdd
()
.
HasColumnType
(
"integer"
)
.
HasAnnotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
);
b
.
Property
<
int
>(
"AccessFailedCount"
)
.
HasColumnType
(
"integer"
);
b
.
Property
<
int
>(
"Age"
)
.
HasColumnType
(
"integer"
);
b
.
Property
<
string
>(
"ConcurrencyStamp"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"Email"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
bool
>(
"EmailConfirmed"
)
.
HasColumnType
(
"boolean"
);
b
.
Property
<
bool
>(
"LockoutEnabled"
)
.
HasColumnType
(
"boolean"
);
b
.
Property
<
DateTimeOffset
?>(
"LockoutEnd"
)
.
HasColumnType
(
"timestamp with time zone"
);
b
.
Property
<
string
>(
"Name"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"NormalizedEmail"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"NormalizedUserName"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"PasswordHash"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"PhoneNumber"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
bool
>(
"PhoneNumberConfirmed"
)
.
HasColumnType
(
"boolean"
);
b
.
Property
<
string
>(
"SecurityStamp"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
bool
>(
"TwoFactorEnabled"
)
.
HasColumnType
(
"boolean"
);
b
.
Property
<
string
>(
"UserName"
)
.
HasColumnType
(
"text"
);
b
.
HasKey
(
"Id"
);
b
.
ToTable
(
"Users"
);
});
modelBuilder
.
Entity
(
"PhoneStore.Models.Basket"
,
b
=>
{
b
.
HasOne
(
"PhoneStore.Models.Phone"
,
"Phone"
)
.
WithMany
()
.
HasForeignKey
(
"PhoneId"
)
.
OnDelete
(
DeleteBehavior
.
Cascade
)
.
IsRequired
();
b
.
Navigation
(
"Phone"
);
});
modelBuilder
.
Entity
(
"PhoneStore.Models.Order"
,
b
=>
{
b
.
HasOne
(
"PhoneStore.Models.Phone"
,
"Phone"
)
.
WithMany
()
.
HasForeignKey
(
"PhoneId"
)
.
OnDelete
(
DeleteBehavior
.
Cascade
)
.
IsRequired
();
b
.
Navigation
(
"Phone"
);
});
modelBuilder
.
Entity
(
"PhoneStore.Models.Phone"
,
b
=>
{
b
.
HasOne
(
"PhoneStore.Models.Brand"
,
"Brand"
)
.
WithMany
()
.
HasForeignKey
(
"BrandId"
);
b
.
Navigation
(
"Brand"
);
});
#pragma warning restore 612, 618
}
}
}
PhoneStore/Migrations/20220721214239_AddIdentityUserWithRoles.cs
0 → 100644
View file @
6f14ab8c
using
System
;
using
Microsoft.EntityFrameworkCore.Migrations
;
using
Npgsql.EntityFrameworkCore.PostgreSQL.Metadata
;
namespace
PhoneStore.Migrations
{
public
partial
class
AddIdentityUserWithRoles
:
Migration
{
protected
override
void
Up
(
MigrationBuilder
migrationBuilder
)
{
migrationBuilder
.
CreateTable
(
name
:
"Users"
,
columns
:
table
=>
new
{
Id
=
table
.
Column
<
int
>(
type
:
"integer"
,
nullable
:
false
)
.
Annotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
),
Name
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
true
),
Age
=
table
.
Column
<
int
>(
type
:
"integer"
,
nullable
:
false
),
UserName
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
true
),
NormalizedUserName
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
true
),
Email
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
true
),
NormalizedEmail
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
true
),
EmailConfirmed
=
table
.
Column
<
bool
>(
type
:
"boolean"
,
nullable
:
false
),
PasswordHash
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
true
),
SecurityStamp
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
true
),
ConcurrencyStamp
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
true
),
PhoneNumber
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
true
),
PhoneNumberConfirmed
=
table
.
Column
<
bool
>(
type
:
"boolean"
,
nullable
:
false
),
TwoFactorEnabled
=
table
.
Column
<
bool
>(
type
:
"boolean"
,
nullable
:
false
),
LockoutEnd
=
table
.
Column
<
DateTimeOffset
>(
type
:
"timestamp with time zone"
,
nullable
:
true
),
LockoutEnabled
=
table
.
Column
<
bool
>(
type
:
"boolean"
,
nullable
:
false
),
AccessFailedCount
=
table
.
Column
<
int
>(
type
:
"integer"
,
nullable
:
false
)
},
constraints
:
table
=>
{
table
.
PrimaryKey
(
"PK_Users"
,
x
=>
x
.
Id
);
});
}
protected
override
void
Down
(
MigrationBuilder
migrationBuilder
)
{
migrationBuilder
.
DropTable
(
name
:
"Users"
);
}
}
}
PhoneStore/Migrations/20220721215303_Changeinheritance.Designer.cs
0 → 100644
View file @
6f14ab8c
// <auto-generated />
using
System
;
using
Microsoft.EntityFrameworkCore
;
using
Microsoft.EntityFrameworkCore.Infrastructure
;
using
Microsoft.EntityFrameworkCore.Migrations
;
using
Microsoft.EntityFrameworkCore.Storage.ValueConversion
;
using
Npgsql.EntityFrameworkCore.PostgreSQL.Metadata
;
using
PhoneStore.Models
;
namespace
PhoneStore.Migrations
{
[
DbContext
(
typeof
(
MobileContext
))]
[
Migration
(
"20220721215303_Changeinheritance"
)]
partial
class
Changeinheritance
{
protected
override
void
BuildTargetModel
(
ModelBuilder
modelBuilder
)
{
#pragma warning disable 612, 618
modelBuilder
.
HasAnnotation
(
"Relational:MaxIdentifierLength"
,
63
)
.
HasAnnotation
(
"ProductVersion"
,
"5.0.17"
)
.
HasAnnotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
);
modelBuilder
.
Entity
(
"Microsoft.AspNetCore.Identity.IdentityRoleClaim<int>"
,
b
=>
{
b
.
Property
<
int
>(
"Id"
)
.
ValueGeneratedOnAdd
()
.
HasColumnType
(
"integer"
)
.
HasAnnotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
);
b
.
Property
<
string
>(
"ClaimType"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"ClaimValue"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
int
>(
"RoleId"
)
.
HasColumnType
(
"integer"
);
b
.
HasKey
(
"Id"
);
b
.
HasIndex
(
"RoleId"
);
b
.
ToTable
(
"AspNetRoleClaims"
);
});
modelBuilder
.
Entity
(
"Microsoft.AspNetCore.Identity.IdentityUserClaim<int>"
,
b
=>
{
b
.
Property
<
int
>(
"Id"
)
.
ValueGeneratedOnAdd
()
.
HasColumnType
(
"integer"
)
.
HasAnnotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
);
b
.
Property
<
string
>(
"ClaimType"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"ClaimValue"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
int
>(
"UserId"
)
.
HasColumnType
(
"integer"
);
b
.
HasKey
(
"Id"
);
b
.
HasIndex
(
"UserId"
);
b
.
ToTable
(
"AspNetUserClaims"
);
});
modelBuilder
.
Entity
(
"Microsoft.AspNetCore.Identity.IdentityUserLogin<int>"
,
b
=>
{
b
.
Property
<
string
>(
"LoginProvider"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"ProviderKey"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"ProviderDisplayName"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
int
>(
"UserId"
)
.
HasColumnType
(
"integer"
);
b
.
HasKey
(
"LoginProvider"
,
"ProviderKey"
);
b
.
HasIndex
(
"UserId"
);
b
.
ToTable
(
"AspNetUserLogins"
);
});
modelBuilder
.
Entity
(
"Microsoft.AspNetCore.Identity.IdentityUserRole<int>"
,
b
=>
{
b
.
Property
<
int
>(
"UserId"
)
.
HasColumnType
(
"integer"
);
b
.
Property
<
int
>(
"RoleId"
)
.
HasColumnType
(
"integer"
);
b
.
HasKey
(
"UserId"
,
"RoleId"
);
b
.
HasIndex
(
"RoleId"
);
b
.
ToTable
(
"AspNetUserRoles"
);
});
modelBuilder
.
Entity
(
"Microsoft.AspNetCore.Identity.IdentityUserToken<int>"
,
b
=>
{
b
.
Property
<
int
>(
"UserId"
)
.
HasColumnType
(
"integer"
);
b
.
Property
<
string
>(
"LoginProvider"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"Name"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"Value"
)
.
HasColumnType
(
"text"
);
b
.
HasKey
(
"UserId"
,
"LoginProvider"
,
"Name"
);
b
.
ToTable
(
"AspNetUserTokens"
);
});
modelBuilder
.
Entity
(
"PhoneStore.Models.Basket"
,
b
=>
{
b
.
Property
<
int
>(
"Id"
)
.
ValueGeneratedOnAdd
()
.
HasColumnType
(
"integer"
)
.
HasAnnotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
);
b
.
Property
<
int
>(
"PhoneId"
)
.
HasColumnType
(
"integer"
);
b
.
HasKey
(
"Id"
);
b
.
HasIndex
(
"PhoneId"
);
b
.
ToTable
(
"Baskets"
);
});
modelBuilder
.
Entity
(
"PhoneStore.Models.Brand"
,
b
=>
{
b
.
Property
<
int
>(
"Id"
)
.
ValueGeneratedOnAdd
()
.
HasColumnType
(
"integer"
)
.
HasAnnotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
);
b
.
Property
<
string
>(
"Name"
)
.
HasColumnType
(
"text"
);
b
.
HasKey
(
"Id"
);
b
.
ToTable
(
"Brands"
);
});
modelBuilder
.
Entity
(
"PhoneStore.Models.Order"
,
b
=>
{
b
.
Property
<
int
>(
"Id"
)
.
ValueGeneratedOnAdd
()
.
HasColumnType
(
"integer"
)
.
HasAnnotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
);
b
.
Property
<
string
>(
"Address"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"ContactPhone"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
int
>(
"PhoneId"
)
.
HasColumnType
(
"integer"
);
b
.
Property
<
string
>(
"UserName"
)
.
HasColumnType
(
"text"
);
b
.
HasKey
(
"Id"
);
b
.
HasIndex
(
"PhoneId"
);
b
.
ToTable
(
"Orders"
);
});
modelBuilder
.
Entity
(
"PhoneStore.Models.Phone"
,
b
=>
{
b
.
Property
<
int
>(
"Id"
)
.
ValueGeneratedOnAdd
()
.
HasColumnType
(
"integer"
)
.
HasAnnotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
);
b
.
Property
<
int
?>(
"BrandId"
)
.
HasColumnType
(
"integer"
);
b
.
Property
<
string
>(
"Image"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"Name"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
decimal
>(
"Price"
)
.
HasColumnType
(
"numeric"
);
b
.
HasKey
(
"Id"
);
b
.
HasIndex
(
"BrandId"
);
b
.
ToTable
(
"Phones"
);
});
modelBuilder
.
Entity
(
"PhoneStore.Models.Role"
,
b
=>
{
b
.
Property
<
int
>(
"Id"
)
.
ValueGeneratedOnAdd
()
.
HasColumnType
(
"integer"
)
.
HasAnnotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
);
b
.
Property
<
string
>(
"ConcurrencyStamp"
)
.
IsConcurrencyToken
()
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"Name"
)
.
HasMaxLength
(
256
)
.
HasColumnType
(
"character varying(256)"
);
b
.
Property
<
string
>(
"NormalizedName"
)
.
HasMaxLength
(
256
)
.
HasColumnType
(
"character varying(256)"
);
b
.
HasKey
(
"Id"
);
b
.
HasIndex
(
"NormalizedName"
)
.
IsUnique
()
.
HasDatabaseName
(
"RoleNameIndex"
);
b
.
ToTable
(
"AspNetRoles"
);
});
modelBuilder
.
Entity
(
"PhoneStore.Models.User"
,
b
=>
{
b
.
Property
<
int
>(
"Id"
)
.
ValueGeneratedOnAdd
()
.
HasColumnType
(
"integer"
)
.
HasAnnotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
);
b
.
Property
<
int
>(
"AccessFailedCount"
)
.
HasColumnType
(
"integer"
);
b
.
Property
<
int
>(
"Age"
)
.
HasColumnType
(
"integer"
);
b
.
Property
<
string
>(
"ConcurrencyStamp"
)
.
IsConcurrencyToken
()
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"Email"
)
.
HasMaxLength
(
256
)
.
HasColumnType
(
"character varying(256)"
);
b
.
Property
<
bool
>(
"EmailConfirmed"
)
.
HasColumnType
(
"boolean"
);
b
.
Property
<
bool
>(
"LockoutEnabled"
)
.
HasColumnType
(
"boolean"
);
b
.
Property
<
DateTimeOffset
?>(
"LockoutEnd"
)
.
HasColumnType
(
"timestamp with time zone"
);
b
.
Property
<
string
>(
"Name"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"NormalizedEmail"
)
.
HasMaxLength
(
256
)
.
HasColumnType
(
"character varying(256)"
);
b
.
Property
<
string
>(
"NormalizedUserName"
)
.
HasMaxLength
(
256
)
.
HasColumnType
(
"character varying(256)"
);
b
.
Property
<
string
>(
"PasswordHash"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
string
>(
"PhoneNumber"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
bool
>(
"PhoneNumberConfirmed"
)
.
HasColumnType
(
"boolean"
);
b
.
Property
<
string
>(
"SecurityStamp"
)
.
HasColumnType
(
"text"
);
b
.
Property
<
bool
>(
"TwoFactorEnabled"
)
.
HasColumnType
(
"boolean"
);
b
.
Property
<
string
>(
"UserName"
)
.
HasMaxLength
(
256
)
.
HasColumnType
(
"character varying(256)"
);
b
.
HasKey
(
"Id"
);
b
.
HasIndex
(
"NormalizedEmail"
)
.
HasDatabaseName
(
"EmailIndex"
);
b
.
HasIndex
(
"NormalizedUserName"
)
.
IsUnique
()
.
HasDatabaseName
(
"UserNameIndex"
);
b
.
ToTable
(
"AspNetUsers"
);
});
modelBuilder
.
Entity
(
"Microsoft.AspNetCore.Identity.IdentityRoleClaim<int>"
,
b
=>
{
b
.
HasOne
(
"PhoneStore.Models.Role"
,
null
)
.
WithMany
()
.
HasForeignKey
(
"RoleId"
)
.
OnDelete
(
DeleteBehavior
.
Cascade
)
.
IsRequired
();
});
modelBuilder
.
Entity
(
"Microsoft.AspNetCore.Identity.IdentityUserClaim<int>"
,
b
=>
{
b
.
HasOne
(
"PhoneStore.Models.User"
,
null
)
.
WithMany
()
.
HasForeignKey
(
"UserId"
)
.
OnDelete
(
DeleteBehavior
.
Cascade
)
.
IsRequired
();
});
modelBuilder
.
Entity
(
"Microsoft.AspNetCore.Identity.IdentityUserLogin<int>"
,
b
=>
{
b
.
HasOne
(
"PhoneStore.Models.User"
,
null
)
.
WithMany
()
.
HasForeignKey
(
"UserId"
)
.
OnDelete
(
DeleteBehavior
.
Cascade
)
.
IsRequired
();
});
modelBuilder
.
Entity
(
"Microsoft.AspNetCore.Identity.IdentityUserRole<int>"
,
b
=>
{
b
.
HasOne
(
"PhoneStore.Models.Role"
,
null
)
.
WithMany
()
.
HasForeignKey
(
"RoleId"
)
.
OnDelete
(
DeleteBehavior
.
Cascade
)
.
IsRequired
();
b
.
HasOne
(
"PhoneStore.Models.User"
,
null
)
.
WithMany
()
.
HasForeignKey
(
"UserId"
)
.
OnDelete
(
DeleteBehavior
.
Cascade
)
.
IsRequired
();
});
modelBuilder
.
Entity
(
"Microsoft.AspNetCore.Identity.IdentityUserToken<int>"
,
b
=>
{
b
.
HasOne
(
"PhoneStore.Models.User"
,
null
)
.
WithMany
()
.
HasForeignKey
(
"UserId"
)
.
OnDelete
(
DeleteBehavior
.
Cascade
)
.
IsRequired
();
});
modelBuilder
.
Entity
(
"PhoneStore.Models.Basket"
,
b
=>
{
b
.
HasOne
(
"PhoneStore.Models.Phone"
,
"Phone"
)
.
WithMany
()
.
HasForeignKey
(
"PhoneId"
)
.
OnDelete
(
DeleteBehavior
.
Cascade
)
.
IsRequired
();
b
.
Navigation
(
"Phone"
);
});
modelBuilder
.
Entity
(
"PhoneStore.Models.Order"
,
b
=>
{
b
.
HasOne
(
"PhoneStore.Models.Phone"
,
"Phone"
)
.
WithMany
()
.
HasForeignKey
(
"PhoneId"
)
.
OnDelete
(
DeleteBehavior
.
Cascade
)
.
IsRequired
();
b
.
Navigation
(
"Phone"
);
});
modelBuilder
.
Entity
(
"PhoneStore.Models.Phone"
,
b
=>
{
b
.
HasOne
(
"PhoneStore.Models.Brand"
,
"Brand"
)
.
WithMany
()
.
HasForeignKey
(
"BrandId"
);
b
.
Navigation
(
"Brand"
);
});
#pragma warning restore 612, 618
}
}
}
PhoneStore/Migrations/20220721215303_Changeinheritance.cs
0 → 100644
View file @
6f14ab8c
using
Microsoft.EntityFrameworkCore.Migrations
;
using
Npgsql.EntityFrameworkCore.PostgreSQL.Metadata
;
namespace
PhoneStore.Migrations
{
public
partial
class
Changeinheritance
:
Migration
{
protected
override
void
Up
(
MigrationBuilder
migrationBuilder
)
{
migrationBuilder
.
DropPrimaryKey
(
name
:
"PK_Users"
,
table
:
"Users"
);
migrationBuilder
.
RenameTable
(
name
:
"Users"
,
newName
:
"AspNetUsers"
);
migrationBuilder
.
AlterColumn
<
string
>(
name
:
"UserName"
,
table
:
"AspNetUsers"
,
type
:
"character varying(256)"
,
maxLength
:
256
,
nullable
:
true
,
oldClrType
:
typeof
(
string
),
oldType
:
"text"
,
oldNullable
:
true
);
migrationBuilder
.
AlterColumn
<
string
>(
name
:
"NormalizedUserName"
,
table
:
"AspNetUsers"
,
type
:
"character varying(256)"
,
maxLength
:
256
,
nullable
:
true
,
oldClrType
:
typeof
(
string
),
oldType
:
"text"
,
oldNullable
:
true
);
migrationBuilder
.
AlterColumn
<
string
>(
name
:
"NormalizedEmail"
,
table
:
"AspNetUsers"
,
type
:
"character varying(256)"
,
maxLength
:
256
,
nullable
:
true
,
oldClrType
:
typeof
(
string
),
oldType
:
"text"
,
oldNullable
:
true
);
migrationBuilder
.
AlterColumn
<
string
>(
name
:
"Email"
,
table
:
"AspNetUsers"
,
type
:
"character varying(256)"
,
maxLength
:
256
,
nullable
:
true
,
oldClrType
:
typeof
(
string
),
oldType
:
"text"
,
oldNullable
:
true
);
migrationBuilder
.
AddPrimaryKey
(
name
:
"PK_AspNetUsers"
,
table
:
"AspNetUsers"
,
column
:
"Id"
);
migrationBuilder
.
CreateTable
(
name
:
"AspNetRoles"
,
columns
:
table
=>
new
{
Id
=
table
.
Column
<
int
>(
type
:
"integer"
,
nullable
:
false
)
.
Annotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
),
Name
=
table
.
Column
<
string
>(
type
:
"character varying(256)"
,
maxLength
:
256
,
nullable
:
true
),
NormalizedName
=
table
.
Column
<
string
>(
type
:
"character varying(256)"
,
maxLength
:
256
,
nullable
:
true
),
ConcurrencyStamp
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
true
)
},
constraints
:
table
=>
{
table
.
PrimaryKey
(
"PK_AspNetRoles"
,
x
=>
x
.
Id
);
});
migrationBuilder
.
CreateTable
(
name
:
"AspNetUserClaims"
,
columns
:
table
=>
new
{
Id
=
table
.
Column
<
int
>(
type
:
"integer"
,
nullable
:
false
)
.
Annotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
),
UserId
=
table
.
Column
<
int
>(
type
:
"integer"
,
nullable
:
false
),
ClaimType
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
true
),
ClaimValue
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
true
)
},
constraints
:
table
=>
{
table
.
PrimaryKey
(
"PK_AspNetUserClaims"
,
x
=>
x
.
Id
);
table
.
ForeignKey
(
name
:
"FK_AspNetUserClaims_AspNetUsers_UserId"
,
column
:
x
=>
x
.
UserId
,
principalTable
:
"AspNetUsers"
,
principalColumn
:
"Id"
,
onDelete
:
ReferentialAction
.
Cascade
);
});
migrationBuilder
.
CreateTable
(
name
:
"AspNetUserLogins"
,
columns
:
table
=>
new
{
LoginProvider
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
false
),
ProviderKey
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
false
),
ProviderDisplayName
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
true
),
UserId
=
table
.
Column
<
int
>(
type
:
"integer"
,
nullable
:
false
)
},
constraints
:
table
=>
{
table
.
PrimaryKey
(
"PK_AspNetUserLogins"
,
x
=>
new
{
x
.
LoginProvider
,
x
.
ProviderKey
});
table
.
ForeignKey
(
name
:
"FK_AspNetUserLogins_AspNetUsers_UserId"
,
column
:
x
=>
x
.
UserId
,
principalTable
:
"AspNetUsers"
,
principalColumn
:
"Id"
,
onDelete
:
ReferentialAction
.
Cascade
);
});
migrationBuilder
.
CreateTable
(
name
:
"AspNetUserTokens"
,
columns
:
table
=>
new
{
UserId
=
table
.
Column
<
int
>(
type
:
"integer"
,
nullable
:
false
),
LoginProvider
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
false
),
Name
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
false
),
Value
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
true
)
},
constraints
:
table
=>
{
table
.
PrimaryKey
(
"PK_AspNetUserTokens"
,
x
=>
new
{
x
.
UserId
,
x
.
LoginProvider
,
x
.
Name
});
table
.
ForeignKey
(
name
:
"FK_AspNetUserTokens_AspNetUsers_UserId"
,
column
:
x
=>
x
.
UserId
,
principalTable
:
"AspNetUsers"
,
principalColumn
:
"Id"
,
onDelete
:
ReferentialAction
.
Cascade
);
});
migrationBuilder
.
CreateTable
(
name
:
"AspNetRoleClaims"
,
columns
:
table
=>
new
{
Id
=
table
.
Column
<
int
>(
type
:
"integer"
,
nullable
:
false
)
.
Annotation
(
"Npgsql:ValueGenerationStrategy"
,
NpgsqlValueGenerationStrategy
.
IdentityByDefaultColumn
),
RoleId
=
table
.
Column
<
int
>(
type
:
"integer"
,
nullable
:
false
),
ClaimType
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
true
),
ClaimValue
=
table
.
Column
<
string
>(
type
:
"text"
,
nullable
:
true
)
},
constraints
:
table
=>
{
table
.
PrimaryKey
(
"PK_AspNetRoleClaims"
,
x
=>
x
.
Id
);
table
.
ForeignKey
(
name
:
"FK_AspNetRoleClaims_AspNetRoles_RoleId"
,
column
:
x
=>
x
.
RoleId
,
principalTable
:
"AspNetRoles"
,
principalColumn
:
"Id"
,
onDelete
:
ReferentialAction
.
Cascade
);
});
migrationBuilder
.
CreateTable
(
name
:
"AspNetUserRoles"
,
columns
:
table
=>
new
{
UserId
=
table
.
Column
<
int
>(
type
:
"integer"
,
nullable
:
false
),
RoleId
=
table
.
Column
<
int
>(
type
:
"integer"
,
nullable
:
false
)
},
constraints
:
table
=>
{
table
.
PrimaryKey
(
"PK_AspNetUserRoles"
,
x
=>
new
{
x
.
UserId
,
x
.
RoleId
});
table
.
ForeignKey
(
name
:
"FK_AspNetUserRoles_AspNetRoles_RoleId"
,
column
:
x
=>
x
.
RoleId
,
principalTable
:
"AspNetRoles"
,
principalColumn
:
"Id"
,
onDelete
:
ReferentialAction
.
Cascade
);
table
.
ForeignKey
(
name
:
"FK_AspNetUserRoles_AspNetUsers_UserId"
,
column
:
x
=>
x
.
UserId
,
principalTable
:
"AspNetUsers"
,
principalColumn
:
"Id"
,
onDelete
:
ReferentialAction
.
Cascade
);
});
migrationBuilder
.
CreateIndex
(
name
:
"EmailIndex"
,
table
:
"AspNetUsers"
,
column
:
"NormalizedEmail"
);
migrationBuilder
.
CreateIndex
(
name
:
"UserNameIndex"
,
table
:
"AspNetUsers"
,
column
:
"NormalizedUserName"
,
unique
:
true
);
migrationBuilder
.
CreateIndex
(
name
:
"IX_AspNetRoleClaims_RoleId"
,
table
:
"AspNetRoleClaims"
,
column
:
"RoleId"
);
migrationBuilder
.
CreateIndex
(
name
:
"RoleNameIndex"
,
table
:
"AspNetRoles"
,
column
:
"NormalizedName"
,
unique
:
true
);
migrationBuilder
.
CreateIndex
(
name
:
"IX_AspNetUserClaims_UserId"
,
table
:
"AspNetUserClaims"
,
column
:
"UserId"
);
migrationBuilder
.
CreateIndex
(
name
:
"IX_AspNetUserLogins_UserId"
,
table
:
"AspNetUserLogins"
,
column
:
"UserId"
);
migrationBuilder
.
CreateIndex
(
name
:
"IX_AspNetUserRoles_RoleId"
,
table
:
"AspNetUserRoles"
,
column
:
"RoleId"
);
}
protected
override
void
Down
(
MigrationBuilder
migrationBuilder
)
{
migrationBuilder
.
DropTable
(
name
:
"AspNetRoleClaims"
);
migrationBuilder
.
DropTable
(
name
:
"AspNetUserClaims"
);
migrationBuilder
.
DropTable
(
name
:
"AspNetUserLogins"
);
migrationBuilder
.
DropTable
(
name
:
"AspNetUserRoles"
);
migrationBuilder
.
DropTable
(
name
:
"AspNetUserTokens"
);
migrationBuilder
.
DropTable
(
name
:
"AspNetRoles"
);
migrationBuilder
.
DropPrimaryKey
(
name
:
"PK_AspNetUsers"
,
table
:
"AspNetUsers"
);
migrationBuilder
.
DropIndex
(
name
:
"EmailIndex"
,
table
:
"AspNetUsers"
);
migrationBuilder
.
DropIndex
(
name
:
"UserNameIndex"
,
table
:
"AspNetUsers"
);
migrationBuilder
.
RenameTable
(
name
:
"AspNetUsers"
,
newName
:
"Users"
);
migrationBuilder
.
AlterColumn
<
string
>(
name
:
"UserName"
,
table
:
"Users"
,
type
:
"text"
,
nullable
:
true
,
oldClrType
:
typeof
(
string
),
oldType
:
"character varying(256)"
,
oldMaxLength
:
256
,
oldNullable
:
true
);
migrationBuilder
.
AlterColumn
<
string
>(
name
:
"NormalizedUserName"
,
table
:
"Users"
,
type
:
"text"
,
nullable
:
true
,
oldClrType
:
typeof
(
string
),
oldType
:
"character varying(256)"
,
oldMaxLength
:
256
,
oldNullable
:
true
);
migrationBuilder
.
AlterColumn
<
string
>(
name
:
"NormalizedEmail"
,
table
:
"Users"
,
type
:
"text"
,
nullable
:
true
,
oldClrType
:
typeof
(
string
),
oldType
:
"character varying(256)"
,
oldMaxLength
:
256
,
oldNullable
:
true
);
migrationBuilder
.
AlterColumn
<
string
>(
name
:
"Email"
,
table
:
"Users"
,
type
:
"text"
,
nullable
:
true
,
oldClrType
:
typeof
(
string
),
oldType
:
"character varying(256)"
,
oldMaxLength
:
256
,
oldNullable
:
true
);
migrationBuilder
.
AddPrimaryKey
(
name
:
"PK_Users"
,
table
:
"Users"
,
column
:
"Id"
);
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment