Вот моя ситуация ..
Предположим, у вас есть следующие объекты модели, которые представляют отдельные таблицы самостоятельно:
Фильмы [Movie_Id, название, рейтинг, ..]
Актеры [Actor_Id, FirstName, LastName, ..]
Директор [Director_Id, Имя, Фамилия, ..]
И еще одна сущность / таблица под названием «Рекомендации», которая представляет рекомендации между пользователями на веб-сайте. Идея состоит в том, что рекомендация может быть любого типа, т.е. кто-то рекомендует актера или кто-то рекомендует фильм. По сути, таблица должна выглядеть примерно так:
Рекомендации [Рекомендации_Id, Object_Id, Object_Type, ..]
И вот что я застрял в. Как я могу сопоставить эти отношения в nHibernate с Fluent?
Я имею в виду ... во время отображения я не могу указать тип (с какой таблицей связан), потому что он определяется во время выполнения, но я не могу полагаться только на идентификатор, потому что сам по себе он не может подразумевать, к какой таблице принадлежит.
Например, представьте эту запись в таблице рекомендаций:
Recommendation_Id - Object_ID - Тип_объект
83001--4010123 --- "M"
В основном я храню идентификатор символа (в данном случае «M» обозначает таблицу «Movies»), чтобы знать, к какой таблице принадлежит Object_Id. Я не могу просто сохранить Object_Id без Object_Type ..
В качестве заключительного комментария я хотел бы добавить, что я видел все примеры таблица-на-класс, таблица-на-подкласс, таблица-на-конкретный класс, но я считаю, что ни один из этих подходов не подходит Ситуация, когда Movies_Id, Actors_Id, Director_Id, ... все они различны, как и Рекомендации_Id. Я имею в виду, что здесь нет наследования базового класса и дочернего класса, они вообще не разделяют идентификаторы ..
Надеюсь, я проясню.
Заранее спасибо.