@DailyDDose

EntityFrameWork — миграция для добавления колонки?

Как написать миграцию для добавления колонки?
namespace WebApiServer.Migrations
{
    using Microsoft.EntityFrameworkCore.Metadata;
    using Microsoft.EntityFrameworkCore.Migrations;
    
    public partial class AddFieldAvatarToUsersTable : Migration
    {
        protected override void Up(MigrationBuilder migrationBuilder)
        {
            // alter table users alter column add Avatar - varchar(255)
        }
 
        protected override void Down(MigrationBuilder migrationBuilder)
        {
            // alter table users alter column drop Avatar
        }
    }
}

Например как в PHP (Laravel)
class AddFieldAvatarToUsersTable extends Migration
{
    /**
     * Run the migration.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('users', function(Blueprint $table){
            $table->string('avatar')->default('default.jpg');
        });
    }
    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::table('users', function (Blueprint $table) {
            $table->dropColumn('avatar');
        });
    }
}
  • Вопрос задан
  • 215 просмотров
Решения вопроса 1
Надо уточнять model/db first, но судя по всему model. Такие вещи обычно руками не пишут, а используют Add-Migration -Name AddFieldAvatarToUsersTable.
Ну а по сути вопроса:

AddColumn("dbo.users", "avatar", c => c.string(nullable: false, defaultValueSql: "default.jpg"));

и

DropColumn("dbo.users", "avatar");
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы