ef core 一对多配置问题

qq_30412191 2020-09-24 08:34:02
,如下在efCore进行一对多配置的时候,我发现全部查询出来的时候,是有,这个permisson子集的,
但是如果我只针对一个查询,Permissons是没有数据的,
我在数据库看了ef生成的语句,推测是查询出所有的时候,只是简单的select * from a ,然后在内存里进行了组装,所以是有Permissons数据的。
现在的问题是,我如果只针对一个数据,如果能让efCore针对一对多关系在查一次,填充上ICollection<Permisson> Permissons,里面的数据呢?,求教各位大神
...全文
1487 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
正怒月神 2020-09-24
  • 打赏
  • 举报
回复
如果不使用 include来关联的话。
那么关联对象 需要 Virtual,好像不管是不是core。
并且,安装一下 Microsoft.EntityFrameworkCore.Proxies 。
(但是我没用过这个方法。)
  • 打赏
  • 举报
回复
放弃EF吧。只会更多的麻烦。原生ADO问题基本上没有。解决也快。
qq_30412191 2020-09-24
  • 打赏
  • 举报
回复
///,用这种就可以实在包含关系/// 具体sql如下:感谢. exec sp_executesql N'SELECT [p].[KeyId], [p].[Icon], [p].[Name], [p].[Parent_Id], [p].[Permisson_Id], [p].[Type], [p0].[KeyId], [p0].[Icon], [p0].[Name], [p0].[Parent_Id], [p0].[Permisson_Id], [p0].[Type] FROM [Permisson] AS [p] LEFT JOIN [Permisson] AS [p0] ON [p].[Permisson_Id] = [p0].[Parent_Id] WHERE [p].[Permisson_Id] = @__id_0 ORDER BY [p].[KeyId], [p0].[KeyId]',N'@__id_0 nvarchar(450)',@__id_0=N'123'
qq_30412191 2020-09-24
  • 打赏
  • 举报
回复
有切实的思路吗?ef使用的不是很多,好多都不懂,你说的该怎么做?

17,747

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET Framework
社区管理员
  • .NET Framework社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧