我开始使用RavenDB,当我创建一个实体并将实体链接到另一个实体时,我得到了并发异常,例如:
创建新学生时,我正在获取相关课程并将学生添加到“学生”列表中。我看到这种存储和添加这种关系是我的应用程序中的瓶颈。
我如何解决这个并发问题?或者我可以通过其他方式进行此链接?或使用PatchRequest更新Class,然后我不会遇到并发问题?
答案 0 :(得分:2)
您有两个选择
实际上,您在学生和班级之间存在多对多的关系 - 因此您可以将相关密钥存储在关系的任一侧(如果需要,可以存储在两侧)。
如果您的应用在课程中比学生更频繁地工作,请尝试在每个学生上添加一个ClassId列表。您仍然可以通过查询返回班级中所有学生的列表。
除此之外 - 我建议使用“课程”而不是“课程”来避免踩踏c#
中的关键字