新入职一家公司,虽然之前也用ef,但是方式不一样,之前用的db,现在用代码先行的code,基于现有公司基本项目框架都是用的code,所以一步登顶,从最实战的角度去操作code,心颤的很,废话不多说,开始重要环节:

      1,重复的一些安装操作就不再多说了,百度都有,我只讲我遇到的一些个问题点

      2,通常我们进行操作迁移的时候,是不是基本都是Enable-Migrations这样,但是如果碰到这样的呢

咋办呢,其实也很简单,英语好的同学自行翻译,英语不好的同学浏览器地址栏fanyi.baidu.com,其实出来的意思都是一样的,多个上下文,其实这就是实战当中碰到的,因为一般的只会有一个,但是项目为了应对不同的需求会用到多个上下文关联一个或多个数据库,

所以解决起来也简单,要用哪个就复制哪个出来执行就完事了(最后面这个)

      3,  这个似曾相识吧,其实就是上面的命令已经成功,接着执行下面的命令了

        好了,说完了,就这样!

        4,并没有,还有一个最重要的问题怎么更改decimal等浮点型数字的精度呢,刚开始也一直桌面在之前的实体里面加头,跟加字段约束一样的,但是太复杂又不符合项目书写规范,找了很久,后面在一个叫老饭饭的大佬的指导下,我顺势找到了方  法,也符合了项目的书写规范,具体实现也很简单,不废话,上代码

能看明白不,就是在你需要用的的上下文里面重写一个方法,调用ef相关的东西,然后去更改字段的精度和长度,然后再执行上面的操作,直到看到数据库字段的精度和长度改变为止,

还有一种方式是可以先执行Add-Migration "版本名称"生成一个空的Migrations日志,然后再在里面写入需要更改的字段,像这样

然后再执行Update-Database命令,如果执行以后数据库字段还是没有改变,可上数据库查询表__MigrationHistory,删除最新的自己执行的那条(些)操作的记录然后继续Update-Database命令,直到数据库字段更新为止!

另附上一个大佬写的比较标准的文章供参考https://www.cnblogs.com/libingql/p/3330880.html

完毕等下班!

code first从入门到伪精通的更多相关文章

  1. Asp.Net EF Code First 简单入门

    今天在上班期间花了点时间学习了一下微软的EntityFramework Code First技术,这篇文章只是简单的入门,不多废话,下面直入主题. 一.首先添加一个解决方案,接着添加一个web网站,D ...

  2. SQL Server2008从入门到全面精通 SQL数据库视频教程

    第1章 SQL Server 2008入门知识:1.SQL SERVER 2008简介2.数据库概念3.关系数据库4.范式5.E-R模型6.SQL Server 2008体系结构7.安装IIS服务8. ...

  3. Kafka入门初探+伪集群部署

    Kafka是目前非常流行的消息队列中间件,常用于做普通的消息队列.网站的活性数据分析(PV.流量.点击量等).日志的搜集(对接大数据存储引擎做离线分析). 全部内容来自网络,可信度有待考证!如有问题, ...

  4. PHP博大精深,入门容易,精通难,怎么才能真正学好PHP

    基础最重要  (1)熟悉HTML/CSS/JS等网页基本元素,完成阶段可自行制作完整的网页,对元素属性达到熟悉程度  (2)理解动态语言的概念,运做机制,熟悉PHP语法  (3)学习如何将PHP与HT ...

  5. Hadoop大数据初入门----haddop伪分布式安装

    一.hadoop解决了什么问题 hdfs 解决了海量数据的分布式存储,高可靠,易扩展,高吞吐量mapreduce 解决了海量数据的分析处理,通用性强,易开发,健壮性 yarn 解决了资源管理调度 二. ...

  6. 1-3:CSS3课程入门之伪类和伪元素

    E:target 表示当前的URL片段的元素类型,这个元素必须是E E:disabled 表示不可点击的表单控件 E:enabled 表示可点击的表单控件 E:checked 表示已选中的checkb ...

  7. ajax从入门到深入精通

    前言 ajax全称Asynchronous Javascript and XML.其中Asynchronous代表异步.同步于异步是描述通信模式的概念,同步机制:发送方发生请求后,需要等待接收到接收方 ...

  8. 详细的Hadoop的入门教程-伪分布模式Pseudo-Distributed Operation

    一. 伪分布模式Pseudo-Distributed Operation 这里关于VM虚拟机的安装就不再介绍了,详细请看<VMware虚拟机的三种网络管理模式>一章介绍.这章只介绍hado ...

  9. Graphviz从入门到不精通

    1.安装Graphviz (windows 版本,后面说linux下的安装) 1.1)下载安装文件 从graphviz官网下载 http://www.graphviz.org/Download.php ...

随机推荐

  1. java获取全部子类或接口的全部实现

    在JAVA中,获取一个类的全部父类是比较简单的,只需要通过反射(Class的getSuperclass()方法)即可.然而,如果想获得一个类的所有子类,或者获得实现某一个接口的所有实现类,相对比较麻烦 ...

  2. Mysql关键字之Group By(二)

    原文地址,优先更新https://hhe0.github.io 我们在上一节简单介绍了Mysql中group by关键字的用法,没有看过的同学点击这里了解一下; 文中提到的courses表和相关记录可 ...

  3. hppts的理解

    参考: https://www.ruanyifeng.com/blog/2014/02/ssl_tls.html

  4. Sound (audio file) player in java - working source code example

    转载自:http://ganeshtiwaridotcomdotnp.blogspot.com/2011/12/sound-audio-file-player-in-java-working.html ...

  5. 一个命令永久禁用Win10驱动程序强制签名

    https://blog.csdn.net/xiaodingqq/article/details/80093888

  6. sklearn简单线性回归

    from sklearn import datasetsfrom sklearn.model_selection import train_test_splitfrom sklearn.linear_ ...

  7. IE6/IE7/IE8 JQuery下resize事件执行多次的解决方法

    在使用jQuery的resize事件时发现每次改变浏览器的窗口大小时resize时间会执行两次,百度搜索了一下找到一个解决的方法,使用setTimeout来解决这个问题代码如下: var resize ...

  8. C# .NET WINFORM MUTEX 互斥

    static class Program 里的全局变量: static System.Threading.Mutex appMutex; Main 方法里的内容: string exeName = & ...

  9. MySQL(八)事务的隔离级别

    一.事务的并发问题 1.脏读:事务A读取了事务B更新的数据,然后B回滚操作,那么A读取到的数据是脏数据 2.不可重复读:事务 A 多次读取同一数据,事务 B 在事务A多次读取的过程中,对数据作了更新并 ...

  10. (三)shiro的认证

    文章目录 认证思路 自定义用于登录检验的Realm的思路 代码实现 后记 认证思路 调用 SecurityUtils.getSubject() 方法,获取当前的 Subject 对象 : 调用 Sub ...