Преобразование внешних ограничений в документном документе raven

У меня есть следующая сущность "MyEntity" в моей RavenDb

{
  Id: {Guid}
  //...
  //...
}

В приложении может произойти конкретное событие, относящееся к элементам MyEntity. Не хочу связывать пользователей (в том числе и в БД) с этим типом события, чтобы позволить обработчику событий обрабатывать событие, только если есть связь между MyEntity и User

Используя MySQL, я бы создал таблицу, которая объединяет MyEntity.Id с User.Id (и, возможно, с конкретным EventId) 1:x (x элемент N), чтобы я мог запрашивать все элементы с определенным Id (MyEntitiy.Id) и соответствующий User.Id

Можно ли просто применить этот подход к документу db, например RavenDb? Или я должен рассмотреть что-то еще?

1 ответ

Отношения между документами в RavenDB реализованы следующим образом:

Документ может ссылаться на любой другой документ из базы данных, сохраняя ссылочный идентификатор документа в документе. Ссылочные документы называются: Сопутствующие документы.

Например, документ employee /3-A относится к документу employee / 2-A:

{
    "LastName": "Leverling",
    "FirstName": "Janet",
    "ReportsTo": "employees/2-A",
}

Эти связанные документы могут быть "загружены", "проиндексированы" и "запрошены".

Узнайте больше о моделировании документов и работе с несколькими документами по следующим ссылкам:

Другие вопросы по тегам