二、EF的相关程序包 Microsoft.EntityFrameworkCore 核心程序包,封装了关键的核心代码,使用EF必须引用这个包 Microsoft.EntityFrameworkCore.Design...设计包,用于在命令行工具下EF Core开发的工具套件 Microsoft.EntityFrameworkCore.Tools 用于数据库的生成、迁移、生成表等 三、EF Core支持的数据库引擎:SqlServer...Microsoft.EntityFrameworkCore.Cosmos 四、使用流程 1、在项目里添加安装数据库程序包,我这里使用MySql数据库,管理Nuget程序包添加Microsoft.EntityFrameworkCore.Design..."); base.OnConfiguring(optionsBuilder); } } 4、添加数据库迁移文件:程序包管理控制台输入: Add-Migration...InitialCreate //InitialCreate是生成迁移文件的文件名,执行此命令后,会生成Migrations文件夹及相关的迁移文件 Update-Database //生成数据库
Core 一样,所以会依赖注入 MyDbContext等 # 全局安装 EF Core 工具 dotnet tool install --global dotnet-ef # 安装 设计包,这是对项目运行命令所必需的...ef migrations add InitialCreate # database update 命令创建数据库并向其应用新的迁移 dotnet ef database update dotnet...ef migrations add InitialCreate 创建描述表结构的代码文件 EF Core 有两个工具集 .NET Core 命令行接口 (CLI) 工具可用于 Windows、Linux...例如,添加 EmailAddress 字段。 运行应用。 EnsureCreated 创建具有新架构的数据库。 在无需保存数据的情况下,当架构快速发展时,此工作流在早期开发过程中表现良好。...如果需要保存已输入数据库的数据,情况就有所不同了。 如果是这种情况,请使用迁移。
,还有一个IdentityServer模板可以使用,dotnet new is4ef创建一个支持EF的新项目。...,且包括了IdentityServer4.EntityFramework.Storage 1.添加nuget引用 cd ....\IdentityServer\ dotnet add package IdentityServer4.EntityFramework 2.添加对mysql的支持 dotnet add package...最好的方式就是使用EF数据迁移(EF migrations) 这里官方只提供了针对sqlserver的sql脚本,可以看一下,做个了解。...--global dotnet-ef dotnet add package Microsoft.EntityFrameworkCore.Design #cd到IdentityServer项目目录 dotnet
可以延迟加载需要的数据,外键引用属性、查询结果等 丰富的映射关系,支持一对一,一对多,多对多,甚至继承、单表多实例等 可以使用Linq 进行查询 非Core版的可以通过数据库表生成实体类,两种都可以通过实体类生成表...接下来,添加 EF的SQLite包: 在非Visual Studio环境下,安装一个三方库可以使用: dotnet add package Microsoft.EntityFrameworkCore.Sqlite...Add-Migration InitialCreate Update-Database 或者在命令行界面输入: dotnet tool install --global dotnet-ef dotnet...add package Microsoft.EntityFrameworkCore.Design dotnet ef migrations add InitialCreate dotnet ef database...这是EF Core保留的迁移记录,以便下次使用。 如果项目根目录里没有 blogging.db 这个SQLite文件的话,会自动创建该文件,同时设置好表;如果有,但不是SQLite的文件,则会报错。
本文是一个简单的EF Core教程,演示了如何使用EF Core进行数据库操作。 1. 安装EF Core 首先,创建一个WebApi项目,我们需要安装EF Core。...进行数据库迁移 在使用EF Core之前,我们需要进行数据库迁移。迁移是将模型类映射到数据库表的过程。...dotnet add package Microsoft.EntityFrameworkCore.Design 首先,打开命令行工具,并导航到项目的根目录。...然后运行以下命令来创建一个新的迁移: dotnet ef migrations add InitialCreate 上述命令将创建一个名为"InitialCreate"的迁移,它将根据模型类创建数据库表...接下来,运行以下命令来应用迁移并创建数据库: dotnet ef database update 上述命令将应用迁移并创建数据库。如果数据库已经存在,它将更新数据库以反映最新的模型更改。
在.NET Core 项目钟(类库),使用Entity Framework,建立模型生成数据库时,失败 Could not load assembly 'xxx'....HasForeignKey(d => d.GroupId) .OnDelete(DeleteBehavior.Cascade); } } 改成 64位的方法...,不要在 VS 上面改,要到 项目目录下更改 csproj 文件 ps 有了模型后,即可通过迁移创建数据库。...运行 dotnet ef migrations add InitialCreate 以为迁移搭建基架,并为模型创建一组初始表。...运行 dotnet ef database update 以将新迁移应用到数据库。 在应用迁移之前,此命令可创建数据库。 一个逗逗的大学生
如果没有安装ABP CLI,使用命令行窗口安装ABP CLI: dotnet tool install -g Volo.Abp.Cli 在一个空文件夹中使用abp new命令创建您的项目:abp new...Lemon.UserCenter.sln add Lemon.UserCenter.EntityFrameworkCore/Lemon.UserCenter.EntityFrameworkCore.csproj 添加项目引用...领域层添加Volo.Abp.Identity.Domain包引用: dotnet add Lemon.UserCenter.Domain/Lemon.UserCenter.Domain.csproj package...} } } 生成数据迁移代码(提前安装dotnet ef tool): dotnet ef migrations add InitialCreate --project Lemon.UserCenter.EntityFrameworkCore...在api hosting实现项目启动项 添加Volo.Abp.Autofac引用: dotnet add Lemon.UserCenter.HttpApi.Hosting/Lemon.UserCenter.HttpApi.Hosting.csproj
在上一篇【数据库迁移利器:Migrator.Net】中,很多朋友提到了EF的CodeFirst也有数据库的迁移功能,说来真惭愧,玩了那么多年,至今还未去了解EF,今天来了解下CodeFirst然后与Migrator.Net...InitialCreate.cs就是我们初始需要创建的脚本,Configuration是一些迁移配置。...您也可以在项目运行开始添加如下操作: Database.SetInitializer(new MigrateDatabaseToLatestVersion<BlogContext, Configuration...与Migrator.Net对比 作为数据库迁移工具来讲,大家都差不多,都能实现数据库架构的迁移,原理也很相近,不过CodeFirst因为是含在EF中,有了微软的支持在VS中使用,而且迁移代码都是自动生成...,做为一个架构师来说,我更偏向于使用Migrator.Net,因为CodeFirst是EF的一种功能,我们的项目有时候不是必须使用EF的。
关于EntityFramework Core有三个重要的引用和三条重要的命令,掌握以这六条,基本用Entity Framework Core就得心应手了。...不同的数据库这条引用不同,此处仅以SqlServer为例。...引用2:Install-PackageMicrosoft.EntityFrameworkCore.Tools 我们将使用一些实体框架核心工具来创建一个数据库从EF核心模型,所以我们通过添加这条引用来填加那些我们需要的工具包...命令一:Add-Migration InitialCreate 该命令用于为迁移搭建框架,每次模型变更后需要运行此指令,其中InitialCreate为本次变更的名字,每次必须不一样。...命令二:Update-Database 配合上一条命令使用,是实体模型的变更迁移应用到数据库中。只运行上一条命令是只生成了代码,并没有把变更更新到数据库中的,而该指令,可以理解为将变更应用到数据库。
Entity Framework配置 当我们对项目进行Entity Framework进行安装引用的时候,同时生成了两个配置文件 packages.config文件: <?...”是EF默认的连接配置,只有在没有配置连接字符串时生效。 ...在开始Code First数据库迁移之前,我们先对上一节编写的OrderTestContext类进行修改添加默认构造函数,因为Code First Migrations将会使用数据库上下文的默认构造函数进行数据迁移操作...(尽管没有默认构造函数所有的数据操作都能正常进行,但是对于数据迁移这是必须的),因此我们需要添加一个默认构造函数,并且该构造函数中必须传入我们的数据库连接名称,否则将会把更新应用到EF默认数据库上。...添加后,项目中添加了一个名为Migrations的文件夹 查看Configuration文件中的代码为: namespace CodeFirstTest.Migrations { using System
如果想迁移 WPF 或 UWP 请看 将 WPF、UWP 以及其他各种类型的旧样式的 csproj 文件迁移成新样式的 csproj 文件 - walterlv 现在很多项目,测试项目都使用新格式,建议在测试项目试试...,需要删除这个代码才可以不编译一些文件 项目引用 之前的方式需要添加很多代码,如引用 ClassLibrary1 的项目,需要写下面的代码 如果引用的项目有依赖,以前的格式需要把引用写在文件,现在不需要添加引用 假如有 A 引用 B ,B 引用 C ,那么之前的...- walterlv 迁移 WPF 项目 如果需要迁移 WPF 项目,那么先记下自己的引用,最好是截图,然后卸载项目。...看一下缺少了哪些引用再自己添加。 稍微解释一下上面的代码,在一开始使用的 OutputType 是告诉 VisualStudio 生成一个窗口应用程序。
异常处理汇总-开发工具 http://www.cnblogs.com/dunitian/p/4522988.html 协助开发里面总有几个是极简爱好者,但是呢删了不该删的就会影响项目开发,下面看下完整错误信息...: 这台计算机上缺少此项目引用的 NuGet 程序包。...缺少的文件是 .....遇到问题不要慌,先着手解决看看~很明显,估计是这个包给删了,而这个包就是nuget正常使用的关键包~~~ ? UI操作: ? 命令操作: ? 重启收工 ?
使用CodeFirst方式创建数据库 我们新建一个控制台项目,项目中添加两个Model:Author和Blog以及DbContext。...DbContext的添加方式如下: 项目上右键->添加->新建项->ADO.NET Entity Data Model->Empty Code First model 项目代码如下: 1 //默认生成的数据表名为类名...EF6和MYSQL数据库,所以要在项目中添加对Mysql.Data.Entity.EF6以及EntityFrameword 6.0的引用。...InitialCreate文件 因为我们事先让 Code First 自动创建了一个数据库,这个迁移文件中的代码表示数据库中已创建的对象。该文件文件名包含时间戳,这对于排序十分有帮助。...如果尚未创建数据库,则不会将此 InitialCreate 迁移添加到项目中。而是,首次调用 Add-Migration 时,用于创建这些表的代码将为新迁移搭建基架。
使用该atrribute确定迁移应用于哪个上下文。 由于这是项目的第一次迁移,如果我们修改了模型后再Add-Migration生成的时候EFCore 会在添加列之前将更新的模型与旧模型的快照进行比较。...基于该比较,EF Core 检测变化,并添加适当的迁移而不是再重新生成数据库。 最后运行命令Update-Database生成数据库和表,数据库在我们配置的程序路径下。...注意在命令生成的时候CurrentDirectory是项目目录,我们运行的时候要把生成的CodeFirst.db复制到bin/debug。...不然上面的结果第一次可以用,第二次就查询不出来,因为第一次的数据添加后会直接在上下文Context里面。...在项目中安装 Microsoft.EntityFrameworkCore.Design 的 nuget 包。
5.2 使用 EF Core EF Core 有两种使用方式: 代码优先:根据先创建好的实体类来创建数据库和表 数据库优先:根据先创建好的数据库以及其中的数据表来生成与之匹配的实体类 创建一个新项目时...上述命令成功执行之后项目中多了一个文件夹 Migrations,包含本次迁移 更新一波 EF Core tools dotnet tool update --global dotnet-ef 接着将迁移应用到数据库中...,还应创建一个迁移 dotnet ef migrations add SeedData 执行成功之后,自动生成迁移文件,以 _SeedData 结尾,在 Up 方法中向数据库添加数据 namespace...dotnet ef database update 命令执行成功之后,可以看到新添加的数据 如果要删除测试数据,可以注释添加测试数据的代码,并添加一个迁移即可 如果添加数据是最近的一次迁移操作,并且还未执行数据库更新命令...,可以直接通过以下命令删除该迁移 dotnet ef migrations remove
LearnEf.Tests.csproj 为项目之间添加引用: LearnEf.Data依赖LearnEf.Domains: cd LearnEf.Data dotnet add reference ....添加Migration (迁移): 由于我使用的是VSCode+dotnet cli的方法, 所以需要额外的步骤来使dotnet ef命令可用..../LearnEf.Web/LearnEf.Web.csproj 为该项目添加必要的引用: cd LearnEf.Web dotnet add reference ...../LearnEf.Data/LearnEf.Data.csproj 为测试项目添加该项目引用: cd ../*Tests dotnet add reference .....再添加一个迁移: dotnet ef migrations add AddRelationships --project=..
这个专门用于数据库迁移的控制台应用进行移除了,而对于迁移的这个功能,在下面的内容中我也将补充到别的类库上 哦对了,在移除上面的功能之后,你还需要在如下的类库中添加对应的 ABP 程序集引用,从而确保程序可以编译通过...EntityFramework Core(以下简称 EF Core)作为项目的 ORM,如果使用 Code First 模式的话,不可避免的会使用到 migrations 这样一个迁移的操作,在原始的模板中...对于从 .DbMigrations 这个类库,其实是存在引用关系的,当整体删除之后,我们需要在 .HttpApi.Host 上添加对于 .EntityFrameworkCore 这个类库的引用。...因为已经执行过一次了,所以直接将原来的库删除即可 -- 1、创建迁移文件 dotnet ef migrations add Initialize -- 2、应用到数据库中 dotnet ef database...--global dotnet-ef 等待迁移工作的完成,数据库也重新生成了对应的表,此时再次运行项目,系统运行无误后即可进行后续的操作 ?
Abp为我们生成的项目,减少了我们初始化项目的工作量,开箱即用,因此将我们可能会使用的Nuget包预先引入到我们的项目中,也就给我们一种依赖项太多的感觉。...通过VS或者dotNet cli新建一个原生的ASP.NET Core Web API项目,命名为LightweightAbp; 安装Nuget包Volo.Abp.Autofac和Volo.Abp.AspNetCore.Mvc...,依次执行以下命令进行数据迁移和数据库更新: dotnet ef migrations add InitialCreate dotnet ef database update 创建IBookAppService...可以看到,项目中并没有使用复杂架构和复杂的领域驱动设计,仅引用并配置Abp模块,即可使用常规的 ASP.NET Core Web API方式进行开发。 缓存 接下来我们将继续实现缓存功能。...引用Nuget包Volo.Abp.Caching并向LightweightAbpModule添加AbpCachingModule模块依赖; 修改IBookAppService及BookAppService
在使用 sdk style 的 csproj 项目格式,会发现右击引用找不到程序集,此时有一些命名空间没有找到。...本文收集一些命名空间所在的引用 System.Net.Http 引用方法 可以修复在新 sdk style 的 csproj 项目格式找不到 System.Net.Http...ItemGroup> 包含以下命名空间 System.Web.HttpUtility ---- 本文会经常更新,请阅读原文: https://blog.lindexi.com/post/dotnet...,同时有更好的阅读体验。
领取专属 10元无门槛券
手把手带您无忧上云