首页 新闻 会员 周边 捐助

EFCore不同DbContext共用DbSet实体

0
[已解决问题] 解决于 2020-04-14 17:17

1、都注入后,通过构造函数使用?
2、继承使用?

悦峯的主页 悦峯 | 菜鸟二级 | 园豆:223
提问于:2020-04-13 23:27
< >
分享
最佳答案
0

不需要共用基础实体
你的前置问题的解决方案错了。
换成你想解决的原始需求提问,会有人告诉你如何处理的。

奖励园豆:5
爱编程的大叔 | 高人七级 |园豆:30844 | 2020-04-14 16:15

感谢,就像dudu说的一样的,不需要这么做。
我问题源于数据一致性,DbContext1和DbContext2不需要关联,加一个DbContext3,通过额外方式处理关联数据就行了。
暂时考虑这样处理。

悦峯 | 园豆:223 (菜鸟二级) | 2020-04-14 17:16
其他回答(1)
0

不知道为什么要这么使用?如果一定要这样,可以将一个 DbContext 注入到另一个 DbContext。

dudu | 园豆:30948 (高人七级) | 2020-04-14 08:44

DbContext1 : DbContext
{
DbSet<User> Users...
}

DBContext2 : DbContext
{
// 怎么能用到Users
}

1、是 DBContext2 : DbContext1 ?
2、注入后
XXRepository
{
...DbContext2 _context2;
XXRepository(DbContext1 context1,DbContext2 context2):base(context1){
_context2 = context2;
}
}

主要是如何解决基础实体的共用问题?
Users
Orgs
Customers。。

支持(0) 反对(0) 悦峯 | 园豆:223 (菜鸟二级) | 2020-04-14 10:11

@BigBar: DBContext2 不应该用到 DbContext1Users

支持(0) 反对(0) dudu | 园豆:30948 (高人七级) | 2020-04-14 11:56

@dudu: 所以我应该补充哪方面的知识?DDD?实际项目中该如何解决?有指导意见或者Git开源项目学习一下?

支持(0) 反对(0) 悦峯 | 园豆:223 (菜鸟二级) | 2020-04-14 12:43
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册