zoukankan      html  css  js  c++  java
  • EntityFramework Core CLI Tools 几点坑

    Entity Framework Core 2.0 Features | by Aram Koukia | Koukia

    开发怎么可能离得开数据库呢~ 这里的EFC和以前的EF不是一个东西,就跟.net core和以前的.net不一样是一个道理。

    Core这个家族可以说是完全跟开源接轨了,不管是运行方式,交互方式如果熟悉开源组件的同学就会感觉跟自己家一样,当然还没那么接地气,下面就是在用EFC CLI Tool时碰到的几个坑。

    1. 如果你的项目不是一个程序集,那么你不得不指定开始项目和目标项目就比如得这样:“dotnet ef list -p 目标项目目录 -s 开始项目目录”,这里我就很不理解,也困惑了我好一会,如果知道开始项目,那么作为上层程序集是可以找到下层级中程序集的dbcontext和Model。当然在文档中你可以找到这个说明,只不过我是事后才发现,试问有几个人的项目是只有一个程序集的。
    2. EF Core 6,目前是RC2,作为preview版本它默认需要你指定版本才能被安装,比如当前不指定版本他只给你装到5的latest。
    3. 需要指定一个Dbcontext,如果你有多个的话,它有一个查找顺序,是用的父类往下找的,如果碰到问题可以从这里作为突入口。
    4. 它支持从数据库导出Model,也支持从Model导入数据库,还支持从Model生成sql script。
    5. 生成scrpt最实用,这里推荐带上“-i|–idempotent”参数,不带上它会默认走一个事务提交所有Model,带上后每个Model都是分开的适用于没有严格migrations的项目。用–no-transactions可以关闭事务。
    6. “-p 和 -s”可以指定到项目文件或者项目目录,这就很开源范!~
    作者:KKcat
        
    个人博客:http://jinzhao.me/
        
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    消息中间件
    线程以及多线程
    锁以及分布式锁
    并发以及高并发
    SpringBoot + SpringCloud学习踩坑实记
    公众号笔记: 2018年12月
    浅谈final关键字的用法
    浅谈static关键字的四种用法
    Linux常用的一些命令
    HTTPS
  • 原文地址:https://www.cnblogs.com/jinzhao/p/15464808.html
Copyright © 2011-2022 走看看