首页 > 解决方案 > EF Core 迁移成功但未创建数据库的问题

问题描述

我正在尝试进行 EF Core 迁移,但未创建数据库并且没有错误消息。

如果有人能启发我解决这个问题,我将不胜感激。我尝试使用 SSMS 手动创建 SQL Server 数据库,它成功了。所以,我的 SQL Server 没有问题。

这就是我在 VS Code 终端中所做的

dotnet ef migrations add "SqlServer Initial" -p Infrastructure -s API -c StoreContext -o Data/Migrations

构建开始...
构建成功。

信息:Microsoft.EntityFrameworkCore.Infrastructure[10403]
Entity Framework Core 3.1.6 使用提供程序“Microsoft.EntityFrameworkCore.SqlServer”初始化“StoreContext”,选项:无
完成。要撤消此操作,请使用“ef migrations remove”

这就是我.csproj文件中的内容

<Project Sdk="Microsoft.NET.Sdk">
    <ItemGroup>
        <ProjectReference Include="..\Core\Core.csproj"/>
    </ItemGroup>
    <ItemGroup>
      <PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.1.6"/>
      <PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="3.1.6"/>
      <PackageReference Include="StackExchange.Redis" Version="2.1.58"/>
      <PackageReference Include="Microsoft.AspNetCore.Identity" Version="2.2.0"/>
      <PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore"     Version="3.1.6"/>
      <PackageReference Include="Microsoft.IdentityModel.Tokens" Version="6.7.1"/>
      <PackageReference Include="System.IdentityModel.Tokens.Jwt" Version="6.7.1"/>
      <PackageReference Include="Stripe.net" Version="39.16.0"/>
      <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="3.1.0"/>
    </ItemGroup>
    <PropertyGroup>
       <TargetFramework>netstandard2.1</TargetFramework>
    </PropertyGroup>
</Project>

先感谢您。

标签: c#sql-serverasp.net-coreentity-framework-core

解决方案


您需要先添加

dotnet ef migrations add init

在此之后,您可以让 EF 创建您的数据库并从迁移中创建您的架构。

dotnet ef database update

推荐阅读