在数据/存储库层获取用户/租户Id是不好的做法吗?



我想知道人们如何看待使用DI将Microsoft身份注入数据层,然后从中获得用户id。这是否违反了SoC或只是糟糕的开发实践?

对于我开发的东西,我不得不这样做,因为我不希望我的数据层对通常会获得用户标识符的服务进行回复。

我承认我不是软件架构方面的专家,我的解决方案是这样的:

数据<服务><网站>

正如Neil所说,传递UID之类的标识值允许您从下游组件中删除依赖项,通常,更少的依赖项使部署、版本控制和依赖项管理更容易。

这也意味着你的下游代码更容易测试,因为它更容易运行测试——你只需要传递UID,而不需要构造一个实际的标识。

您可能希望数据访问组件获取UID本身的一个原因是,如果您不希望它处于必须信任传递给它的UID的位置。虽然这在理论上可能很有趣,但我从来没有在野外看到过这种情况。

最新更新