近来公司要用到.net 相关的东西,好多年没有看 .net 了,现在把相关东西在熟悉下。
1 首先在自己的数据库里面建好相关的表
2添加EF Core相关包
1:Microsoft.EntityFrameworkCore.SqlServer Sql Server数据库EF提供程序
2:Microsoft.EntityFrameworkCore.Design 设计时EF共享库
3:Microsoft.EntityFrameworkCore.Tools EF的NuGet包管理器命令工具
入下图
然后执行 程序包管理器控制台执行 根据自己的数据库修改相应的字符串
Scaffold-DbContext "Data Source=192.168.1.2;Initial Catalog=Test;Integrated Security=True" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Force
就执行成功了,但是会出现错误
System.InvalidOperationException: Unable to resolve service for type 'ERP.Models.DB_ERPContext' while attempting to activate 'ERP.Controllers.AddPuOrdersController'.
解决办法:
找到进入Startup.cs文件
在ConfigureServices方法内添加(里面填入你的数据库上下文):
services.AddTransient<TestContext>(); //不加这代码会报错------- TestContext 为项目中的dbcontext
数据优先比代码优先可以减少很多操作,我觉得还是比较好的,本人习惯这样操作!