我正在为我的应用程序遵循 DDD 架构。我有应用层、域层和数据访问层(存储库)。假设我在我的应用程序中有 3 个角色:管理员、主管、代理。每个角色都应该访问分配给自己的数据。所以问题是,我是否应该放置查询逻辑以便按存储库中的角色过滤数据,例如
var query = dataContext.Order.Where(...);
if(userRole = "admin")
query =.... filter by admin
If(usrRole = "supervisor")
query =....
return query.ToList();
我认为与业务逻辑相关的逻辑应该放在领域层。但我还没有清除这一点。你们能帮我解决这个问题吗?