EF Core DBFirst

本次环境:

  • VS2017
  • SQL SERVER 2012
  • WIN10 64位

下文中的源码
https://gitee.com/michel4liu/EF_DBFirstDemo


正文

  1. 新建.NET Core项目,如果这里没有Net Core选项的说明VS2017安装时没有选择NET Core安装项.

新建.NET Core项目

  1. 安装项目所需Nuget依赖项

    包名当时版本备注
    Microsoft.EntityFrameworkCore2.0.0EFCore核心
    Microsoft.EntityFrameworkCore.Tools2.0.0
    Microsoft.EntityFrameworkCore.Design2.0.0
    Microsoft.EntityFrameworkCore.SqlServer2.0.0操作SQL SERVER
    Microsoft.EntityFrameworkCore.SqlServer.Design1.1.2

    两种安装方式
    a、简单鼠标式
    打开 【管理解决方案的 NuGet 程序包】(位置:工具->NuGet 包管理器->管理解决方案的 NuGet 程序包),搜索包名,选择安装的项目,点击安装按钮.

    b、炫酷命令行
    调出【程序包管理控制台】(位置:工具->NuGet 包管理器->程序包管理控制台),选择【默认项目】,键入以下命令安装依赖.

    Install-package Microsoft.EntityFrameworkCore
    Install-package Microsoft.EntityFrameworkCore.Tools
    Install-package Microsoft.EntityFrameworkCore.Design
    Install-package Microsoft.EntityFrameworkCore.SqlServer
    Install-package Microsoft.EntityFrameworkCore.SqlServer.Design
     

    任何一种方式全部安装成功后在依赖项的NuGet中将看到安装后的包

  2. 通过数据库将生成Model
    a、调出【程序包管理控制台】,选择项目,输入以下命令 将数据库中所有表生成Model
    Scaffold-DbContext “Server=192.168.56.101; Database=EFCoreDemo;Persist Security Info=True;User ID=sa;password=12345;” Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models

    命令解析:
    Scaffold-DbContext “数据库连接字符串” Microsoft.EntityFrameworkCore.SqlServer -OutputDir 输出的文件夹,如无此参将生成到项目根目录
    如果只想生成某些表将使用Tables参数 如: -Tables(“table1”,”table2”,”table3”,”table4”)
    其他参数可输入 Scaffold-DbContext -? 查看帮助.

    b、生成成功后可看到Models,而且已经自动生成数据上下文”EFCoreDemoContext”

  3. 测试
    a、插入数据测试:分别插入People和Credit

b、插入数据测试:利用People和Credit有外键关系一起插入数据库,生成Model时因为外键关系 所以People对象内会有ICollection Credit 属性

c、查询,如需linq扩展方法使用需要引用using System.Linq; 如:ToList() 用到Linq扩展方法。


完结

如有错误请评论回复。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
.NET Core 6.0中使用Entity Framework(EF)的Database First方式配置连接并进行实战是很简单的。 首先,确保你的项目中已经安装了相应的NuGet包,包括`Microsoft.EntityFrameworkCore.Tools`和`Microsoft.EntityFrameworkCore.SqlServer`(如果你使用SQL Server作为数据库)。 接下来,打开终端或命令提示符窗口,进入你的项目文件夹,并执行以下命令来生成EF的模型类: ``` dotnet ef dbcontext scaffold "YourConnectionString" Microsoft.EntityFrameworkCore.SqlServer -o Models ``` 在这个命令中,你需要将"YourConnectionString"替换为你的数据库连接字符串。该命令将自动生成EF的模型类,并将其放在`Models`文件夹中。 完成上述步骤后,你就可以在代码中使用这些生成的模型类来与数据库进行交互了。例如,你可以编写以下代码来获取数据库中的数据: ```csharp using System; using System.Linq; using Microsoft.EntityFrameworkCore; using YourProject.Models; // 替换为你生成的模型类所在的命名空间 namespace YourProject { class Program { static void Main(string[] args) { using (var context = new YourDbContext()) // 替换为你生成的DbContext类的名称 { var data = context.YourTableName.ToList(); // 替换为你数据库中的表名称 foreach (var item in data) { Console.WriteLine(item.PropertyName); // 替换为你表中的属性名称 } } } } } ``` 以上代码演示了如何通过使用生成的模型类和DbContext类来查询数据库中的数据。 这就是在.NET Core 6.0中使用EF的Database First方式配置连接并进行实战的简单过程。希望能对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值