我正在使用终端使用 VS Code 从现有数据库 .Net Core 3.0 生成模型,但它不起作用

Posted

技术标签:

【中文标题】我正在使用终端使用 VS Code 从现有数据库 .Net Core 3.0 生成模型,但它不起作用【英文标题】:i am Generating a model from an existing database .Net Core 3.0 with VS Code using Terminal but it doesn't work 【发布时间】:2020-03-25 23:52:45 【问题描述】:

添加了这些包

<ItemGroup>
    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.0.0"/>
    <PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="3.0.0"/>
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="3.0.0"/>
    <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="3.0.0"/>
    <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="3.0.0"/>
</ItemGroup>

我正在尝试运行此命令

Scaffold-DbContext "Server=xxxx;Database=xxx;User Id=sa;Password=xx;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Context

就像 .net core 2.0,但我明白了:

【问题讨论】:

【参考方案1】:

可以使用Scaffold-DbContext对数据库进行逆向工程 在 NuGet 包管理器 控制台上执行。

您使用的不是 Visual Studio NuGet 包管理器控制台,而是 PS 终端。因此,您应该使用命令行工具

dotnet ef dbcontext scaffold "Server=xxxx;Database=xxx;User Id=sa;Password=xx;Trusted_Connection=True;" "Microsoft.EntityFrameworkCore.SqlServer" --output-dir "Models/Scaffold" --context Context

【讨论】:

以上是关于我正在使用终端使用 VS Code 从现有数据库 .Net Core 3.0 生成模型,但它不起作用的主要内容,如果未能解决你的问题,请参考以下文章

Git Bash 构建在 VS Code 中无法从终端运行

VS Code + Debugger for Chrome:在现有 Chrome 实例中打开选项卡,而不是新窗口?

如何将 VS Code 终端选择 UI 从选项卡更改回下拉菜单? [复制]

在 Visual Studio Code 中使用 Makefile 调试现有项目

如果我正在调用 Typescript 构建任务,为啥 VS Code 集成终端不起作用?

在设置使用带有 VS Code 和集成 Git 终端的 anaconda 时卡住了