zoukankan      html  css  js  c++  java
  • .NET Core 多项目工程生成EF迁移代码

    错误表现

    dotnet ef的官方文档针对的是单个项目的情况,即启动项目就是DbContext所在项目。

    对于分层结构的解决方案如启动项目是WebApi项目,DbContext在基础设施项目,在WebApi项目下运行dotnet ef migrations XYZ 就会报No DbContext was found in assembly ……的错误,表示在当前程序集找不到DbContext。

    解决办法

    这时候需要用-p参数指定DbContext所在项目的目录,就能够定位到DbContext。

    另外还需要在DbContext所在项目新建一个实现IDesignTimeDbContextFactory接口的类,这个类是用于创建DbContext实例的。

    补充

    dotnet-ef启动的时候并不是执行代码中的Program.Main方法,而是直接载入程序集,查找继承DbContext的类,然后反射得到配置信息,生成执行代码。

  • 相关阅读:
    初识sql语句
    IO模型比较分析
    select,poll,epoll,selectors
    多路复用IO
    非阻塞IO
    yield-from示例
    阻塞IO(blocking IO)
    IO模型介绍
    gevent实现套接字
    gevent异步,io自动切换
  • 原文地址:https://www.cnblogs.com/zonciu/p/7779186.html
Copyright © 2011-2022 走看看