项目场景:
关于在适用VS2019+Mysql8.0.21+Code-first空模型的有关坑 ——数据缺少元模型
问题描述:
要把写完的code-first代码数据在数据库中生成,使用命令:
Enable-Migrations;
Add-Migration model名
update-database
没有作用,然后报错:No migrations configuration type was found in the assembly 'Exe-Fertile'. (In Visual Studio you can use the Enable-Migrations command from Package Manager Console to add a migrations configuration).
其实是我吧上面的命令第三个在第二步就使用了,但是在第三步提示使用第二个命令后还是报错,所以我尝试了另外一位博主的方案,确实解决了我的问题:
@Override public void run() { bytes = mmInStream.read(buffer); mHandler.obtainMessage(READ_DATA, bytes, -1, buffer).sendToTarget(); }
原因分析:
提示:这里填写问题的分析:
例如:Handler 发送消息有两种方式,分别是 Handler.obtainMessage()和 Handler.sendMessage(),其中 obtainMessage 方式当数据量过大时,由于 MessageQuene 大小也有限,所以当 message 处理不及时时,会造成先传的数据被覆盖,进而导致数据丢失。
解决方案:
如果在迁移数据库执行完一下三个命令没有成功的话请按下面的步骤去进行数据库迁移
1:Enable-Migrations
2:Add-Migration Student.
3:update-database
一般执行以上3个命令都会成功
第一步:删除迁移命令生成的文件夹:Migrations文件夹,重新生成
第二步:执行迁移命令: Add-Migration ,例如:有一个Student的实体类(Model) 为了命名规范,我们一般执行迁移命令如下
Add-Migration Student.
第三步:执行 Enable-Migrations -Force命令
第四步:删除Migrations文件夹下面的带Create的文件
第五步:执行Enable-Migrations命令
第六步:与第二步执行命令相同,Add-Migration Student
第七步:提交到数据库执行命令:update-database
第八步:查看执行添加表字段的脚步命令:update-database -Verbose
第九步:重新编译解决方案,因为我们执行的命令是修改了debug/relealse 目录下面对应的数据库,所以如果项目中的数据库文件设置为
参考blog:https://www.cnblogs.com/BeyondWang/archive/2012/11/02/2747924.html