zoukankan      html  css  js  c++  java
  • Code First 添加多个上下文

    很久没写博客了,今天公司项目换框架,和大家商量要搞个Entity Framework code first ,然后开始搭建Demo

    简单的就不重复了,直接上干货,中间踩过的坑, code first 创建多数据库、多个上下文,而且表名还一样

    解决方案,一个数据库创建一个实体类项目,如下图:

    问题来了,两个实体类,怎么创建数据库?

    解决方案:分开单独创建,分次创建

    1,配置webconfig 两个数据库连接字符串,然后重新生成解决方案

      


    <add name="NewsContext" providerName="System.Data.SqlClient" connectionString="Server=.;UID=XXX;PWD=XXX;Database=YJC1111;" /> <add name="WCSContext" providerName="System.Data.SqlClient" connectionString="Server=.;UID=XXX;PWD=XXX;Database=YJC2222;" />

    2,首先打开nuget 命令窗口

      工具 →Nuget 包管理器 →程序包管理器控制台

    3,创建 Migrations,输入以下命令 会在项目中创建一个文件夹

      

    PM> Enable-Migrations -ContextTypeName  "CodeFirst.Entity.NewsContext" -ProjectName "CodeFirst.Entity" -StartUpProjectName "Code" -ConnectionStringName "NewsContext" -Verbose

      

       

    4,添加 数据库表(数据迁移)

      对于已经先有数据库,再用Code first 的同志,请执行  Add-Migration InitialCreate -IgnoreChanges

    PM> Add-Migration -Name "Add"  -ProjectName "CodeFirst.Entity" -StartUpProjectName "Code" -ConnectionStringName "NewsContext" -Verbose

      

    5,更新,提交

      

    PM> Update-Database -Script -ProjectName "CodeFirst.Entity.WCS" -StartUpProjectName "Code" -ConnectionStringName "WCSContext"  -Verbose

    以上步骤操分别操作完,会创建2个数据库,表名一样,字段名也一样,都没问题

    图1

     图2

     

     图3

  • 相关阅读:
    数据结构之堆排序
    数学之向量的点积(点乘、数量积)
    解决oracle11g数据库监听连接不上问题
    纯净版SSM
    maven打包mapper.xml打不进去问题
    servlet读取请求参数后流失效的问题
    Linux---centos7.0安装、配置
    5-- String 、StringBulid 、StringBuffer的区别
    02 | Java内存模型:看Java如何解决可见性和有序性问题
    01 | 可见性、原子性和有序性问题:并发编程Bug的源头
  • 原文地址:https://www.cnblogs.com/xiao-yang/p/9637688.html
Copyright © 2011-2022 走看看