我正在编写 mmorpg 服务器仿真器(爱好项目)并且我已经停止编写数据访问层。问题是我不能使用 ORM(性能问题)。我已经阅读了很多关于 Repository 模式的内容,但它似乎不太适合我的项目,因为我需要以下方法:(player db) GetAllByLevel(...)、GetByName(...) 等。我希望我的应用程序与数据库无关。(我现在使用 sql server,但我想稍后添加对 mysql 的支持)哪种数据访问模式适合我的项目?
对不起,我的英语不好。
编辑
还有一个问题。我读过存储库模式在 agreggate 根上运行。我有 3 个表玩家,player_friend 和 player_chest。Player 是一个聚合根,如果我没记错的话,我应该只创建一个存储库 (PlayerRepository),它可能具有以下方法:GetFriends([player id], ...), GetChest([player id], ...)等等。我对吗?