| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- using System;
- using Microsoft.EntityFrameworkCore.Migrations;
- #nullable disable
- namespace Infrastructure.Migrations.AppDb;
- /// <inheritdoc />
- public partial class AddMemberFollow : Migration
- {
- /// <inheritdoc />
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.CreateTable(
- name: "MemberFollow",
- columns: table => new
- {
- ID = table.Column<int>(type: "int", nullable: false, comment: "PK")
- .Annotation("SqlServer:Identity", "1, 1"),
- FollowerMemberID = table.Column<int>(type: "int", nullable: false, comment: "팔로우 주체 회원 ID"),
- FolloweeMemberID = table.Column<int>(type: "int", nullable: false, comment: "팔로우 대상 회원 ID"),
- NotifyOnPost = table.Column<bool>(type: "bit", nullable: false, comment: "새 글 알림 수신 여부"),
- IsMuted = table.Column<bool>(type: "bit", nullable: false, comment: "피드 숨김 여부"),
- CreatedAt = table.Column<DateTime>(type: "datetime2", nullable: false, comment: "팔로우 일시")
- },
- constraints: table =>
- {
- table.PrimaryKey("PK_MemberFollow", x => x.ID);
- table.ForeignKey(
- name: "FK_MemberFollow_Member_FolloweeMemberID",
- column: x => x.FolloweeMemberID,
- principalTable: "Member",
- principalColumn: "ID",
- onDelete: ReferentialAction.Restrict);
- table.ForeignKey(
- name: "FK_MemberFollow_Member_FollowerMemberID",
- column: x => x.FollowerMemberID,
- principalTable: "Member",
- principalColumn: "ID",
- onDelete: ReferentialAction.Restrict);
- },
- comment: "회원 팔로우 관계");
- migrationBuilder.CreateIndex(
- name: "IX_Post_MemberID_IsDeleted_CreatedAt",
- table: "Post",
- columns: new[] { "MemberID", "IsDeleted", "CreatedAt" },
- descending: new[] { false, false, true });
- migrationBuilder.CreateIndex(
- name: "IX_MemberFollow_FolloweeMemberID",
- table: "MemberFollow",
- column: "FolloweeMemberID");
- migrationBuilder.CreateIndex(
- name: "IX_MemberFollow_FollowerMemberID_CreatedAt",
- table: "MemberFollow",
- columns: new[] { "FollowerMemberID", "CreatedAt" },
- descending: new[] { false, true });
- migrationBuilder.CreateIndex(
- name: "IX_MemberFollow_FollowerMemberID_FolloweeMemberID",
- table: "MemberFollow",
- columns: new[] { "FollowerMemberID", "FolloweeMemberID" },
- unique: true);
- }
- /// <inheritdoc />
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropTable(
- name: "MemberFollow");
- migrationBuilder.DropIndex(
- name: "IX_Post_MemberID_IsDeleted_CreatedAt",
- table: "Post");
- }
- }
|