我在myVS 2015解决方案中有两个项目 .
-
Project A
-
Web Api 2.2项目
-
主项目,其中定义了DBContext类和连接字符串(在web.config文件中)
-
Project B
-
class 图书馆计划
-
项目A作为参考添加
-
模型和控制器定义
-
Models继承了一个Project A类
-
创建了一个DBContext类,它从项目A继承DBContext .
-
public DbSet Planets {get;组; }
My idea behind the above project structure is:
-
在项目变大时降低复杂性
-
使其不那么复杂并增加可读性
-
在项目A中进行身份验证和授权逻辑
I have to achieve following thing in Project B:
-
需要从项目A共享/访问连接字符串
-
需要先运行代码迁移 .
-
在将应用程序部署到prod时,需要知道如何运行代码首次迁移?
Problem:
我已启用代码首次迁移并更新了数据库 . 我运行没有任何问题,但它没有运行在项目A的web.config中配置的数据库 . 相反,它添加自己的本地数据库 .
我是否应该在项目B中指定连接字符串 . 如果是,作为一个类库,我该如何添加配置文件?
1 回答
您需要在App.Config中指定连接字符串,然后在DbContext的构造函数中给出连接字符串的名称 .
您还需要在App.Config中将defaultConnectionFactory从LocalDbConnectionFactory更改为SQLConnectionDbFactory .