使用CLI命令更新dbcontext

问题描述 投票:0回答:1

我正在尝试在迁移后更新数据库,但出现错误提示“数据库中已经存在一个名为[TableName]的对象。”

下面是我的项目的结构

[AtlasBooking.Client存放startup.cs文件并包含在不同的命名空间中,而AtlasBooking.Storing是我存放数据库交互的几乎所有其他内容的地方

 1.AtlasBooking.Client
    -View folder
    -ViewModels folder
    -Controller folder
    -Program.cs file
    -Startup.cs file
    -AtlasBooking.Client.csproj file

2. AtlasBooking.Storing
     -DbContext folder
     -Repositories folder
     -Migrations folder
     -AtlasBooking.Storing.csproj file

[AtlasBooking.Client.csproj引用AtlasBooking.Storing.csproj,如下所示

<ItemGroup>
    <ProjectReference Include="..\AtlasBooking.Storing\AtlasBooking.Storing.csproj" />
  </ItemGroup>

我已通过以下方式成功添加了迁移

AtlasBooking.Storing: dotnet ef --startup-project ../AtlasBooking.Client/AtlasBooking.Client.csproj migrations add initialCreate --context AtlasBookingDbContext -o Migrations

更新我使用过的数据库

AtlasBooking.Storing:  dotnet ef --startup-project ../AtlasBooking.Client/AtlasBooking.Client.csproj  database update

我也尝试过

AtlasBooking.Storing:  dotnet ef --startup-project ../AtlasBooking.Client/AtlasBooking.Client.csproj  database update -force

我收到错误Unrecognized option '-force'

我该如何解决?

c# entity-framework asp.net-core command-line-interface
1个回答
0
投票

您应该使用双破折号--force

© www.soinside.com 2019 - 2024. All rights reserved.